------- android培训、java培训、期待与您交流! ----------
js是一种用来设计网页的语言,弱类型,基于对象,
感觉用起来都比较容易好懂
js中的对象类型都是object,并且数组长度可变,元素类型任意,但是在使用数组时还是存同一类型元素比较好,方便操作.
js中有个简化对象调用内容的语句,叫with语句,
格式:
with(对象){
该区域可以直接使用对象的内容(不需要写 对象. )
}
js中特有语句:for in
格式:
for(变量 in 对象)//对对象进行遍历的语句{
}
e.g.
var arr=[32,80,65];
for (i in arr){
println("i="+arr[i]);
}
//结果:i=32 i=80 i=65
js自定义对象:
如果想要自定义对象,应该先对对象进行描述. js是基于对象,不是面向对象的,不具备描述事物的能力,
我们还下过按照面向对象的思想编写js
就要先描述,在js中,可以用函数来模拟面向对象中的描述
//用js来描述人
function Person(){//相当于构造器
alert("Person run");
}
对象有两种调用成员的方式:对象.属性名 对象["属性名"]
javascript的应用
一、表格的创建
思路:
1、创建一个table节点,document_createElement_x_x(table));
2、通过table节点的insertRow()方法创建表格的行对象(tr)并添加到rows集合中。
3、通过tr的insertCell()方法创建单元格对象,并添加到cells集合中。
4、给单元格中添加数据。
a.创建一个节点如文本节点,document_createTextNode("文本内容"),
通过单元格对象a()方法将文本节点添加到单元格的尾部。
b.通过单元格的innerText或者innerHTML tdNode.innerHTML =i+"..."+j;
添加到单元格中
5、建立好对象节点,添加到DOM树种,也就是页面的指定位置上
二、表格行和列的删除
思路:
1、删除行:获取表格对象,通过表格对象的deleteRow方法,将指定的行索引传入到deleteRow方法中
2、删除列:表格中没有直删除列的方法,要通过删除每一行中指定的单元格蓝完成删除列的动作
获取所有的行对象,并进行遍历,通过行对象的deleteCell方法将指定单元格删除。
tabNode.rows(i).deleteCell(colnum-1)
三、对表格中数据 排序
思路:
1、获取表格中的所有行对象
2、定义临时存储器,将需要进行排序的行对象存入数组中。
3、对数组进行排序,通过比较每一个行对象中指定单元格中的数据,如果是整数要通过parseInt转换
4、将排序后的数组通过遍历,将每一个行对象重新添加回表格,通过tbody节点的a方法。
5、其实排序就是每一个行对象的饮用取出。
四、表格的行颜色间隔显示,并在鼠标指定的行上高亮显示
思路:
1、获取所有的行对象,将需要间隔显示的行对象进行动态的className属性指定样式(class选择器)
2、为了完成高亮,需要用到tr的两个属性 onmouseover()和onmouseout()
3、为了方便,可以在便利行对象时,将每一个行对象都进行属性指定 tr.onmouseover =function(){}
4、高亮的原理就是将鼠标进入时的指定颜色改变,改变先前记录的行对象的样式。并通过函数进行处理。
在鼠标离开时,将先前的记录样式还原
5.改样式需要在页面加载完毕时使用。window.onload = function()
五、showModalDialog 模式对话框
vReturnValue = window.showModalDialog(sURL [, vArguments] [,sFeatures]);
如果想要在打开的页面使用原页面的节点,需要将原页面的window传过去
即:vArguments = window:
在b页面获得a页面的的window,可以使用b页面的window.dialogArguments;获取到的就是a页面的window
六、showModelessDialog 非模式对话框
同上 只是模式发生的变化。同java中模态、非模态对话框相似