一、基本概念:
1.javascript标签:
<script type = "text/javascript">
#内容
</script>
2.基础操作:
a.注释: // 或/**/
3.运算符优先级:
算术操作符 → 比较操作符 → 逻辑操作符 → "="赋值符号
二、交互
1.输出语句—–document.write(str)
输出:直接输出/变量输出/多项输出/输出HTML标签;
2.alert消息框——alert(str)
3.confirm消息框——confirm(str)
消息框:确定、取消;
返回值: true/false
当用户点击"确定"按钮时,返回true;
当用户点击"取消"按钮时,返回false;
4.prompt消息框——prompt(str1,str2)
消息框:
确定、取消、文本输入框;
参数:
str1: 要显示在消息对话框中的文本,不可修改;
str2:文本框中的内容,可以修改;
返回值:
1. 点击确定按钮,文本框中的内容将作为函数返回值;
2. 点击取消按钮,将返回null;
5.打开新窗口——window.open([URL], [窗口名称], [参数字符串])
参数说明:
a.URL:可选参数,在窗口中要显示网页的网址或路径。
如果省略或它的值是空字符串,窗口就不显示任何文档。
b.窗口名称:可选参数,被打开窗口的名称。
1.该名称由字母、数字和下划线字符组成。
2."_top"、"_blank"、"_selft"具有特殊意义的名称。
_blank:在新窗口显示目标网页
_self:在当前窗口显示目标网页
_top:框架网页中在上部窗口中显示目标网页
3.相同 name 的窗口只能创建一个,要想创建多个窗口则 name 不能相同。
4.name 不能包含有空格。
c.参数字符串:可选参数,设置窗口参数,各参数用逗号隔开(百度之)。
6.关闭窗口——XXX.close()
window.close(); //关闭本窗口
<窗口对象>.close(); //关闭指定的窗口
三、数组
1.定义
var myarray=new Array();
//1.创建的新数组是空数组,输出则显示undefined;
//2.数组都是变长的,即使指定了长度,仍然可以将元素存储在规定长度以外;
//3.未赋值的索引处值也为undefined.
2.赋值
//1.创建时赋值: var myarray=new Array(1,2,3);
//2.直接赋值:var myarray=[1,2,3];
3.索引
arr[index]
4.长度
arr.length
5.二维数组
var arr = new Array(3);
for(var i=0;i<arr.length;i++){
arr[i] = new Array(6);
for(var j=0;j<arr[i].length;j++){
arr[i][j] = i+j;
}
}
四、流程控制
1.分支
//if(){...}
//if(){...}
else{...}
//if(){...}
else if(){...}
else if(){...}
else{....}
//switch()
{
case0: ...
case1: ...
...
default:
break;
}
2.循环
//for循环
//while循环
//do...while循环
五、函数
1.定义:
//function fun_name(parameter1, parameter2)
{
fun_body;
return result;
}
2.调用:
//<script>中调用;
//html中调用;
六、事件
//onclick //onmouseover //onmouseout
//onfocus //onblur
//onselect //onchange
//onload //onunload
七、对象
1.概念
//对象
//属性
//方法
2.常用对象
(1)日期对象---Date()
定义:var date = new Date();
方法:get/setDate(); get/setFullYear();
get/setYear(); get/setMouth();
get/setHours(); get/setMinutes();
get/setSeconds(); get/setTime();
(2)字符串对象
定义:直接赋值
方法:str.length;
str.toUpper/LowerCase();
str.charAt(index);
str.indexOf(substr,start);
str.split("char", cnt);
str.substring(start,end);
str.substr(start,cnt);
(3)Math对象
定义: var arr = new Aarray(length);
属性:E、PI、LN2、LN10、LOG2E、LOG10E、SQRT1_2、SQRT2;
方法:abs(x)、sin(x)、asin(x)、ceil(x)、floor(x)、round(x);
max(x,y)、pow(x,y)、sqrt(x)、log(x)、exp(x);
atan2(y,x)、random()、toSource()、valueOf();
(4)Array数组对象
属性:length;
方法:concat()、 join()、 reverse()、 slice()、 shift();
pop()、 push()、 sort()、 splice()、 unshift();
toSource()、 toString()、 toLocalString()、 valueOf();
八、浏览器对象
1.Window对象
方法:
2.计时器:
方法:
//setInterval(function_name, time);
//clearInterval( var );
//setTimeout(function_name, time);
//clearTimeout( var );
3.History对象
语法: window.history
属性: length
方法: back()、 forward()、 go()
4.Location对象
属性:
方法:
5.Navigator对象:
属性:
(appVersion和userAgent左右一样?)
6.Screen对象:
使用:
//window.screen.属性
属性:
九、DOM对象
1.DOM
(1)节点结构:
(2)节点属性:
(3)节点遍历:
(4)DOM操作:
2.方法:
(1)节点元素:
//getElementById("id");
//getElementsByName("name");
//getElementsByTagName("tag_name");
(2)节点属性:
//elementNode.getAttribute("attr_name");
//elementNode.setAttribute("attr_name","attr_value")
2.DOM节点属性:
(1)nodeName属性:
a. 元素节点 ------ 与标签名相同
b. 属性节点 ------ 属性的名称
c. 文本节点 ------ #text
d. 文档节点 ------ #document
(2)nodeValue属性:
a. 元素节点 ------ undefined 或 null
b. 文本节点 ------ 文本自身
c. 属性节点 ------ 属性的值
(3)nodeType属性:
元素 ------- 1
属性 ------- 2
文本 ------- 3
注释 ------- 8
文档 ------- 9
3.节点操作:
(1)获取子节点:
//node.childNodes;
//node.firstChild;
//node.lastChild;
(2)获取父节点:
//node.parentNode;
(3)获取兄弟节点:
//node.previousSibling;
//node.nextSibling;
(4)添加子节点:
//node.appendChild(childNodeObject);
//node.insertBefore(newChildNode,childNode);
(5)删除子节点:
//node.removeChild(childNode);
(6)替换子节点:
//node.replaceChild (newNode,oldNode )
(7)创建元素节点:
//document.createElement("tag_name");
(8)创建文本节点:
//document.createTextNode("text");
(9)网页尺寸:
a.浏览器可视区域大小:
//document.documentElement.clientHeight || document.body.clientHeight;
//document.documentElement.clientWidth || document.body.clientWidth;
b.网页大小(不包括滚动条等):
//document.documentElement.scrollWidth|| document.body.scrollWidth;
//document.documentElement.scrollHeight|| document.body.scrollHeigh;
c.网页大小(包括滚动条等):
//document.documentElement.offsetWidth|| document.body.offsetWidth
//document.documentElement.offsetHeight|| document.body.offsetHeight