《Head First JavaScript》 学习笔记
<scipt type="text/javascript" src"cookie.js"> </script> //脚本署名方法
<body onload ="resizeRock(); greetUser();" onresize = "resizeRock();"> //重调浏览器触犯的事件
document.getElementById("rockImg").style.height = "100px";
var showTime = {"12:30", "2:45", "5:00", "7:15", "9:30"}; //数组创建
var seats = new Array(new Array(9),new Array(9), new Array(9), new Array(9));
var seats = [ [ , , ,], [ , , ,], [ , , ,], [ , , ,]];
var myShowStatus = showSeatStatus;
回调函数 脚本外部调用 onload ; 浏览器会调用它们
联结事件:联结回调函数与事件,引用函数;
函数名称后面没有括号,因为此时并非意图运行函数,只是想引用函数;
函数字面量 documen.getElementById("seat26").onclick = function(evt){
shouSeatStatus(26);
};
回调函数必须联结到onload事件处理器中;
name 可独一无二地识别表单中的域;
<input id="zipcode" name="zipcode" type="text" size = "5" />
onfocus onblur //onchange;
<input id="phone" name="phone" type="text" size="12" onblur = "validateNonEmpty(this,document.getElementById('phone_help'));"/>
<span id="phone_help" class="help"></span>
inputField.value.length
正则表达式 regular expression
/ . \d \w \s ^ $/
.任何字符 \d数字 \w字母或数字 \s空格 ^起始模式 $结束模式
regular expression / +expression +/
限定符:
* 0次以上 + 1次以上 ?0或1 {n} n次 {min,max} ()集合字母 (this|that)
集合中 [ ] 匹配可选符
document.getElementsByTagName("img")[3]
innerHTML
document.getElementById("story").innerHTML =
"you are <strong> not</strong> alone";
nodeValue nodeType childNodes firstChild lastChild
DOM改变节点文本三步骤
var node = document.getElementBtId("stroy");
while(node.firstChild)
node.removeChild(node.firstChild);//移除所有节点
node.appendChild(document.createTextNode("Ok, maybe you are alone."));//后续接上
鼠标的触发的两种事件 onmouseover / onmouseout
创建HTML元素
var decisionElem = document.creatElement("p");
deicisionElem.appendChild(document.createTextNode(" ");
date对象 setMonth(); getDate(); setYear(); getDay();
var date = new date();
var blogDate = new Date("04/17/2018")
排序方法 sort() 默认升序排列
比较函数 camparison function:
function capare(x,y){
return x-y;
} //<0 x排y前面 >0 y前
blog.sort{(function(blog1,blog2){return blog2.date - blog1.date;}} //比较函数提供只提供给sort()使用,不会出现在别的地方,所以可以省略函数名称
以string为对象
属性 length 方法indexOf(); //检索不到时 return -1;
charAt(); //检索单一字符 toLowerCase();toUpperCase();
MATH
PI =3.14 常量 round()四舍五入取整 ceil()向上取整 floor()上下取整 random()随机
方法存储在类里
类层用 prototype
blog.prototype.toHTML = function() {
}
类特性 blog.prototype.signature = " ..."; 使用时调用类特性 既实例特性吧 blog.signature 或者 this.signature;
AJAX: 可以用于请求任何数据,动态
XML :类似于HTML 可以用自己定义的标签标示数据 例如 <books> 只是一种文本格式
XMLHttpRequest : 内置于JavaScript的函数 用于发起请求和处理请求 ,复杂;
属性:readyState ;请求的状态代码 status;HTTP的请求状态代码 onreadystatechange; responseText; responseXML;
方法: abory(); open(); send();
Get 与 Post
get请求是从服务器上获取数据;
request.open("GET", "bolg.xml", true); // always asynchronous (true);
request.send( null); // get无数据可以发送 所以是null;
post请求是把数据发送给服务器;
request.open("POST", "addblogentry.php", true );
request.setRequestHeader("Content-Type", "application/x-www-form-ulencoded; charset = UTF - 8");
requese.send ("flkasdjflhffnaksljnfkdlsjnf.png");
AjaxRequest:
底层的XMLRequest对象储存在 request特性里面:
方法:getReadyStatus(); getStatus(); getResponseText(); getResponseXML(); send();
发起Ajax请求 :
var ajaxReq = new AjaxRequest();
AjaxReques.prototype.send = function(type, url, handeler, postDataType, postData) {
if(this.request != null){
//Kill the previous request
this.request.abor();
//Tack on a dummy parameter to override brower caching
url += "?dummy" + new Date().getTime();
try{
this.request.onreadystatechange = handler;
this.request.open(type, url, true);
if(tyoe.toLowerCase() == "get"){
//Send a GET request; no data invoived
this.request.send (null);
}else{
//Send a POST request; the last argument is data
this.request.setRequestHeader("Content - Type", postDataType);
this.request.send(postData);
}
}catch(e){
alert("Ajax error conmunicating with the seerver.\n" + "Details :" +e );
}
}
}
所以
var ajaxReq = new ajaxRequest();
ajaxReq.send (type, url, handler, postDataType, postData);
type:get 或者 post
url: 服务器的URL
handler: 处理响应的回调函数
postDataType: 被传送的数据类型 只用于post :charset = UTF-8 ;
function getText(element)
分开创建JS 文件
《Head First JavaScript》 学习笔记的更多相关文章
- js学习笔记:webpack基础入门(一)
之前听说过webpack,今天想正式的接触一下,先跟着webpack的官方用户指南走: 在这里有: 如何安装webpack 如何使用webpack 如何使用loader 如何使用webpack的开发者 ...
- PHP-自定义模板-学习笔记
1. 开始 这几天,看了李炎恢老师的<PHP第二季度视频>中的“章节7:创建TPL自定义模板”,做一个学习笔记,通过绘制架构图.UML类图和思维导图,来对加深理解. 2. 整体架构图 ...
- PHP-会员登录与注册例子解析-学习笔记
1.开始 最近开始学习李炎恢老师的<PHP第二季度视频>中的“章节5:使用OOP注册会员”,做一个学习笔记,通过绘制基本页面流程和UML类图,来对加深理解. 2.基本页面流程 3.通过UM ...
- 2014年暑假c#学习笔记目录
2014年暑假c#学习笔记 一.C#编程基础 1. c#编程基础之枚举 2. c#编程基础之函数可变参数 3. c#编程基础之字符串基础 4. c#编程基础之字符串函数 5.c#编程基础之ref.ou ...
- JAVA GUI编程学习笔记目录
2014年暑假JAVA GUI编程学习笔记目录 1.JAVA之GUI编程概述 2.JAVA之GUI编程布局 3.JAVA之GUI编程Frame窗口 4.JAVA之GUI编程事件监听机制 5.JAVA之 ...
- seaJs学习笔记2 – seaJs组建库的使用
原文地址:seaJs学习笔记2 – seaJs组建库的使用 我觉得学习新东西并不是会使用它就够了的,会使用仅仅代表你看懂了,理解了,二不代表你深入了,彻悟了它的精髓. 所以不断的学习将是源源不断. 最 ...
- CSS学习笔记
CSS学习笔记 2016年12月15日整理 CSS基础 Chapter1 在console输入escape("宋体") ENTER 就会出现unicode编码 显示"%u ...
- HTML学习笔记
HTML学习笔记 2016年12月15日整理 Chapter1 URL(scheme://host.domain:port/path/filename) scheme: 定义因特网服务的类型,常见的为 ...
- DirectX Graphics Infrastructure(DXGI):最佳范例 学习笔记
今天要学习的这篇文章写的算是比较早的了,大概在DX11时代就写好了,当时龙书11版看得很潦草,并没有注意这篇文章,现在看12,觉得是跳不过去的一篇文章,地址如下: https://msdn.micro ...
- ucos实时操作系统学习笔记——任务间通信(消息)
ucos另一种任务间通信的机制是消息(mbox),个人感觉是它是queue中只有一个信息的特殊情况,从代码中可以很清楚的看到,因为之前有关于queue的学习笔记,所以一并讲一下mbox.为什么有了qu ...
随机推荐
- css和css3弹性盒模型实现元素宽度(高度)自适应
一.css实现左侧宽度固定右侧宽度自适应 1.定位 <!DOCTYPE html> <html lang="en"> <head> <me ...
- Highcharts开发图表
1.折线图 显示一个静态的折线图,显示如下数据 星期 温度 周一 9~14 周二 4~10 周三 1~7 周四 4~9 周五 5~11 周六 8~13 周天 7~10 新建demo1.html < ...
- Linux vi 编辑器常见命令的使用
Linux vi 编辑器常见命令的使用 Linux下的文本编辑器有很多种,vi 是最常用的,也是各版本Linux的标配.注意,vi 仅仅是一个文本编辑器,可以给字符着色,可以自动补全,但是不像 Win ...
- Centos7 安装 tree
Centos7 安装 tree 用命令 yum 安装 tree yum -y install tree
- 20165221-week2课上测试补做
week2-课上测试补做 测试一: 参考附图代码,编写一个程序 "week0201学号.c",判断一下你的电脑是大端还是小端. 提交运行结果"学号XXXX的笔记本电脑是X ...
- org.hibernate.boot.MappingNotFoundException: Mapping (RESOURCE) not found :
可能原因: hibernate映射文件hibernate.cfg.xml中mapping中resource写错了文件名或者路径
- Visual studio 配置
解决方案 一个解决方案的文件结构: .sln 项目目录 debug release 其中,debug与release放置最终生成的dll或exe,项目目录下包含 头文 ...
- 【原创】大数据基础之CM5(Cloudera Manager)+CDH5离线安装
CM/CDH 5.16.1 CM官方:https://www.cloudera.com/products/product-components/cloudera-manager.html CDH官方: ...
- SlopeOne
相信大家对如下的Category都很熟悉,很多网站都有类似如下的功能,“商品推荐”,"猜你喜欢“,在实体店中我们有导购来为我们服务,在网络上 我们需要同样的一种替代物,如果简简单单的在数据库 ...
- Java Web 中使用ffmpeg实现视频转码、视频截图
Java Web 中使用ffmpeg实现视频转码.视频截图 转载自:[ http://www.cnblogs.com/dennisit/archive/2013/02/16/2913287.html ...