splice有删除、替换、添加功能
var arr=['张三','李四','王五','赵六','田七'];
//删除第0位,删除1个,从第几个干掉几个
// arr.splice(0,1);//'李四','王五','赵六','田七'
// 替换
//arr.splice(0,1,'leo');(从0开始替换一个元素,如果此处1为0则是插入,如果1为2则是从0开始替换2个元素)
//'leo','李四','王五','赵六','田七'
// arr.splice(0,2,'leo');
//'leo','王五','赵六','田七'
// 添加
// arr.splice(1,0,'周八');
//'张三','周八','李四','王五','赵六','田七'
// 第二个参数如果是1,会把李四干掉,添加可以多个
// alert(arr.splice(0,2))
;//返回删除掉的
// alert(arr.splice(0,2,'aaa'));
//依旧返回删除的俩
数组的去重
(java中可以遍历把元素存入set中)js去重
定义二维数组:
var arr=[
[1,2,3],
[4,5,6],
[7,8,9]
]
省市联动
准备省份作为一个数组
准备城市作为一个二维数组
配合一个onchange事件,每次onchange时记得清空一些城市列表
<select>
<option></option>
</select>
省市联动也可以用json一对一
var json={
}
json字符串(在json外加引号)会被自动解析
DOM:文档对象模型 document object model
提供了许多获取DOM节点的方法
如document.getElementById();等
除此以外还有其他获取节点的方式
DOM 操作指的就是节点操作
var oUl=document.getElementById('ul');
var aLi=oUl.children;(找的就是直接的子节点,再往下节点不计入)
oUl.username.value;(用父节点直接点name值获取相应name的子节点)
firstElementChild第一个子节点
previousElementSibling(上一个兄弟节点)
offsetParent:有定位的父节点(带position属性的,如果没有带定位的父节点则直接找到body)
offsetLeft,offsetTop:当前元素到定位父级的距离(如果right/bottom没有定义则无法使用)、
元素的创建 document.createElement();
如:document.createElement('li');
insertBefore(o1,o2)在指定元素前插入一个元素(o1指的是要插入的节点元素,o2值得是在o2元素之前)
return false能取消默认事件
焦点:onfocus
1、获取焦点--事件,函数
object.onfocus ;(事件) object.focus();(函数)
2、失去焦点--
object.onblur ;(事件) object.blur();(函数)
确认框(也是弹出框但是有确认,会返回一个true或者false)
confirm(1);
右键事件(例:取消右键弹出事件)
document.oncontextmenu=function(){return false;}
BOM browser object model浏览器对象模型
open函数
object.onclick=function(){
window.open("http://baidu.com ","_self");(在当前页面打开)
或者:
window.location.href="http://baidu.com ";
}
全选操作(针对的是)
document.getElementById('text').select();
eval将可以计算的字符串表达式自动进行数学计算
eval(str);
event对象
ie/chrome :event是一个内置全局对象
firefox:事件对象是通过事件函数第一个参数传入的
functionfn1(ev){
alert(ev);
//所有标准都支持
// 兼容写法
var ev=ev||event;
}
onscroll:滚轮滚动事件
事件冒泡:
所有的事件具有穿透性,穿透直到document,这种机制就称为事件冒泡
阻止事件冒泡的一行代码:
ev.stopPropagation();
事件冒泡的应用
键盘事件:
onkeydown:所有键盘按下时都作用
ev.keyCode
if(ev.keyCode==13&&ev.ctrlkey){}
ev.clientX:鼠标x轴方向距离
ev.clientY:鼠标Y轴方向距离
document.documentElement.scrollTop :滚动条滚动的y方向距离
document.documentElement.scrollLeft :滚动条滚动的x方向距离
网友评论