JS开发 二

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时记得清空一些城市列表

省市联动也可以用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第一个子节点

lastElementChild(最后一个子节点)

nextElementSibling(下一个兄弟节点)

previousElementSibling(上一个兄弟节点)

parentNode:当前节点父级节点

offsetParent:有定位的父节点(带position属性的,如果没有带定位的父节点则直接找到body)

offsetLeft,offsetTop:当前元素到定位父级的距离(如果right/bottom没有定义则无法使用)、

元素的创建 document.createElement();

如:document.createElement('li');

appendChild()追加子节点

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方向距离

你可能感兴趣的:(JS开发 二)