2017-4-3 Js函数 时间 补充
(一)函数
1.字符串函数:
s.toLowerCase() --- 转换成小写 s.UpperCase --- 转换成大写
s.substr(3,6) --- 从下标是4的开始截取,截取6个字符,如果不写后面的数字,直接截取到最后(字符串截取主要用这个)
s.substring(3,6) --- 从字符串的位置第三个截取到第五个(包含3,5,不是下标,是位置)
s.split(' '); --- 将字符串按照指定的字符拆开 ,比如中间是逗号,就将不是逗号的全部拆出来
var s = 'a,b,c,d'; var d = s.spilt(',') d就成了一个数组了,里面包含a,b,c,d这几个字符
s.length --- 字符串的长度
s.indexOf('aaa'); --- aaa在字符串中第一次出现的位置,如果没有返回-1;
s.lastIndexOf('a'); --- a在字符串中最后出现的位置
2.时间日期函数:
var a = new Date() --- 当前时间
var d = new Date(1999,3,2); --- 定义一个时间,显示的时间是1999年4月2号 注意时间月份要加1
d.getFullYear(); --- 取年份 d.getMonth(); --- 取月份,取出来的少1 d.getDate(); -- 取天
d.getDay() --- 取星期几 d.getHouse(); --- 取小时 d.getMinutes(); --- 取分钟
d.getSeconds(); --- 去秒
d.getFullYear(); --- 设置年份,设置年份的时候注意加1;
3.数学函数:
Math.ceil(); --- 去上限 Math.floor(); --- 取下限
Math.sqrt(); --- 开平方 Math.round(); --- 四舍五入
Math.round(); --- 随机数0-1;包含0,不包含1;
4.小知识
外面双引号,里面的改为单引号,或者加转义字符
文本框中取出来的值是字符串,需要用parseInt() 转化为数字
s.match(reg);s代表一个字符串,reg代表一个字符串,2者进行匹配,如果2个字符串不匹配,返回null
相当于s==reg,如果双等号12==‘12’是相等的,原因是隐式转换 === 是恒等于 12===‘12’ 返回的是null
(二)事件
1.onclick 鼠标点击事件
2.ondbclick 鼠标双击事件
3.onmouseover 鼠标移入事件
4.onmouseout 鼠标移出事件
5.onmouseove 鼠标在上面移动是触发
6.onchange 只要内容改变触发 onblur 失去焦点是触发 这2个效果一样
7.onfocus 获得焦点是触发
8.onkeydown 按键按下的时候触发
9.onkeyup 按键抬起来的时候触发
补充
1.window.onload(){} --- 全部运行完了,在执行js代码
2.var wid = document.documentElement.clientWidth; --- 获取客户端的宽度
也可以获取客户端的高度,距离上,左的距离
3.window.onresize = function(){} --- 大小一改变,触发时间,可以用来记录客户端(窗口,不是全部网页)改变大小的高度和宽度
列子:随着窗口的大小的改变,记录每次改变的大小(大小是网页中空白的部分)
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <title></title> </head> <body> <span id="id1"></span> </body> </html> <script type="text/javascript"> var a = document.getElementById('id1'); window.onresize = function () { var wid = document.documentElement.clientWidth; var hei = document.documentElement.clientHeight; a.innerText = "高度"+wid+"宽度"+hei; } </script>
(三)补充
1.阻止事件冒泡
window.event ? window.event.cancelBubble = true : e.stopPropagation();
列子:大div套小div是,如果都写上鼠标移入事件,并获取他们的id,这个时候如果不写阻止事件冒泡,在移入小div是,会先获取小div的id,在获取大div的id,这个时候就需要写入阻止冒泡事件。
<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <title></title> </head> <body> <div style="height:400px;width:400px;background-color:yellow" id="div1"> <div style="height:100px;width:100px;background-color:blue" id="div2"> </div> </div> </body> </html> <script type="text/javascript"> var a = document.getElementById('div1'); var b = document.getElementById('div2'); a.onmouseover = function () { alert(a.getAttribute('id')); } b.onmouseover = function () { alert(b.getAttribute('id')); window.event ? window.event.cancelBubble = true : e.stopPropagation(); } </script>