3.JS
JavaScript
是一种客户端的脚本语言,是基于对象的,
有三个部分组成:核心语言规范,文档对象模型(Document),浏览器对象模型
特点:
解释性脚本,不需要编译,
客户端运行,不需要在网络中传数据,
弱类型语言,
安全: 不允许操作硬盘,不能操作数据库,不能直接访问网络文档.只能直接和浏览器直接交互.
动态性: 事件驱动, 在网页上的操作可以驱动javascript
跨平台: 由支持JavaScript的浏览器运行, 独立于操作系统.
作用(用途):
信息动态交互
安全不能直接发访问硬盘
跨平台
校验
引用方式 三种
一种(行内): 利用元素的事件 οnclick="....."
第二种(内部): <script> .......<script>
外部 引用js文件 :
<script src="" type="text/JavaScript"
rel="stylesheet">
弱类类型语言
数据类型
number
String
boolean
null|undefined
Object
function
[] 数组
{} 对象Object
JavaScript:脚本语言
1.alert() 显示一个消息框,只有一个 'OK' ('确定') 按钮;
2.confirm() 显示一个对话框,带有 'OK' ('确定') 和 'Cancel' ('取消') 按钮;
3.prompt(“提示”, 默认值) 显示一个可以让用户输入信息的对话框。
注意
1.如果String+number=String
2.如果String-|÷|*number,如果表达式中用了其它运算符,JavaScript自动将字符串转成数值。
3.typeof 可能的字符串有:"number"、"string"、"boolean"、"object"、
"function" 和 "undefined"。
函数语法
1.
function 函数名( [ 参数列表, 逗号隔开 ] ) {
函数体..
[return 值;]
}
2.
var 函数名=function(){
函数体..
[return 值;]
}
调用用函数时,如果不传参,不会语法错误,只是传参没有值(undefined)
if
0false
== 比较变量的内容
=== 比较类型和内容 全等
switch
for
typeof(变量) 返回该变量的类型
parseInt() 返回整数, 只要是以数字开头, 就正常转换, 否则返回NaN
parseFloat() 同上
Number() 同上
isNaN() 判断是否是数字 是数字false
eval() 将字符转换为对象的数值
document
属性
cookie
函数获得元素
document.getElementById(""); 获得id名的元素,返回一个元素
document.getELementsByTagName("input"); 用标签名获得所有的该标签,返回一个数组
document.getELementsByClassName(""); 利用class的值,返回一个数组
document.getELementsByName("name"); 带某个属性的标签,返回一个数组
document.createElement("标签名") 用于创建元素
document.createTextNode("文本") 用于创建文本节点
对象(obj)
obj .setAttribute("属性名",值);
obj.getAttribute("style");//obj.style.color[backgroundColor,......属性样式]
form表单对象
obj.type
obj.checked
obj.selected
obj.disable
运算符
选择结构 循环结构
获得input元素的value值
obj.value
给元素添加HTML内容
obj.innerHTML="内容";
能够填充其他元素的标签 都有 innerHTML这个属性
innerHTML - 节点(元素)的文本值 可以是一些HTML标签
innerText - 文本
obj.setAttribute( "属性名", "属性值" ) 为对象设置属性值
obj.getAttribute( "属性名" ) 获取对象的属性值
style样式属性
节点操作 函数
parentNode - 节点(元素)的父节点
childNodes - 节点(元素)的子节点
attributes - 节点(元素)的属性节点
appendChild() 把新的子节点添加到指定节点。
removeChild() 删除子节点。
replaceChild() 替换子节点。
insertBefore() 在指定的子节点前面插入新的子节点。
createAttribute() 创建属性节点。
createElement() 创建元素节点。
createTextNode() 创建文本节点。
getAttribute() 返回指定的属性值。
setAttribute() 把指定属性设置或修改为指定的值
事件
mouseOver 鼠标悬浮
mouseDown 点击鼠标左键
MouseMove鼠标移动
MouseOut 离开
click鼠标点击
change改变
focus获得焦点
blur 失去焦点
submit 提交
Load 加载
绑定事件 和取消事件
object.onmouseover = function(){myScript};
object.addEventListener("mouseover", myScript);
object.removeEventListener("mouseover",myScript,false);
内置对象
Math
ceil()
floor()
round()
random()
....
String
属性
length
函数(方法)
substring(开始下标,结束下标)
indexOf("子字符串"); 首次出现的下标
replace(old,new);
....
Array
属性
length
Date
new Date()
new Date(年月日时分秒)
方法
getYear()
getFullYear()
getMonth();
getDate();
getDay();周
getHour();
getMinutes();
getSeconds();
getTime();
window
setTimeuot(方法,毫秒值);//某毫秒值之后执行
clearTimeout(方法); // 清除定时器
setInterval(方法,毫秒值);//每某毫秒值之后执行
clearInterval(方法);//
Location
href
reload()
History
back()
forward()
go()
Node Element 每个不同的元素有不同的属性
参考:(w3cshcool>JavaScript>JavaScript(菜单)>HTML DOM 对象 (菜单)>DOM Document(菜单)
抽取常用
节点对象.cloneNode(true) 用于克隆节点
父元素.appendChild(新节点) 用于向父元素末尾追加子节点
父元素.insertBefore(新元素, 旧元素) 用于将新元素插入到旧元素之前
要删除的节点.remove() 用于删除节点
父元素.removeChild(要删除的节点) 用于删除节点
父元素.replaceChild(新元素, 旧元素) 用于替换节点
table
属性
集合
rows[] 获得所有的行数
cells[] 获得所有的列数
函数
insertRow()
deleteRow()
tr
属性
rowIndex 在表格中的行数坐标
innerHtml 给这行添加 html元素代码
rowSpan
集合
cells[] 返回这一行的列数
函数
insertCell()
deleteCell()
td
属性
cellIndex 在表格中的列数坐标
innerHtml 给这行添加 html元素代码
colSpan 跨列
正则RegExp
正则
规则符
()
[] 包含
{n} 必须连续出n次 {n,m} 至少n不超过m {n,} 至少n到无穷
^ 以什么开始 非
$ 以什么结束
\ 转义字符
\d [0-9]
\D 非数字
\s 空白
\S 非空白
\w 字母数字下划线[a-zA-Z0-9_]
\W 非单词数字
| 或
. 任意字符 [!换行和回车]
? 出现[0-1]次
* 出现0-任意次
+ 至少出现一次
[\u4e00-\u9fa5] 汉字在正则表示为
方法
test true false
exec 匹配就返回该字符串,不匹配null
String
match 匹配就返回该字符串,不匹配null
cookie
cookie:存储浏览器的访问者的一些信息,每当访问者请求页面,就会发送cookie,
我们可以JavaScript操作cookie.
cookie :4KB
Cookie是一段不超过4KB的小型文本数据,由一个名称(Name)、一个值(Value)
和其它几个用于控制Cookie有效期、安全性、使用范围的可选属性组成
//获得cookie
document.cookie