节点对象属性

childNodes—返回节点到子节点的节点列表

firstChild—返回节点的首个子节点。

lastChild—返回节点的最后一个子节点。

nextSibling—返回节点之后紧跟的同级节点。

nodeName—返回节点的名字,根据其类型。

nodeType—返回节点的类型。

nodeValue—设置或返回节点的值,根据其类型。

ownerDocument—返回节点的根元素(document对象)。

parentNode—返回节点的父节点。

previousSibling—返回节点之前紧跟的同级节点。

text—返回节点及其后代的文本(IE独有)。

xml—返回节点及其后代的XML(IE独有)。



节点对象的方法

appendChild()—向节点的子节点列表的结尾添加新的子节点。

cloneNode()—复制节点。

hasChildNodes()—判断当前节点是否拥有子节点。

insertBefore()—在指定的子节点前插入新的子节点。

normalize()—合并相邻的Text节点并删除空的Text节点。

removeChild()—删除(并返回)当前节点的指定子节点。

replaceChild()—用新节点替换一个子节点。

IE6独有

selectNodes()—用一个XPath表达式查询选择节点。

selectSingleNode()—查找和XPath查询匹配的一个节点。

transformNode()—使用XSLT把一个节点转换为一个字符串。

transformNodeToObject()—使用XSLT把一个节点转换成为一个文档。



NodeList对象

length –返回节点列表中的节点数目。

item()—返回节点列表中处于指定的索引号的节点。

例如:

xmlDoc = loadXMLDoc(“books.xml”);

var x = xmlDoc.getElementsByTagName(“title”);

document.write(“title element:” + x.length);
输出:title element:4

var y = xmlDoc.documentElement.childNodes;

document.write(y.item(0).nodeName);

输出:book



NamedNodeMap对象

length—返回列表中节点数目。

getNamedItem()—返回指定的节点。(通过名称)

item()—返回处于指定索引号的节点。

removeNamedItem()—删除指定的节点(根据名称)。

例如:

xmlDoc = loadXMLDoc(“books.xml”);

var x = xmlDoc.getElementsByTagName(“book”);

document.write(x.item(0).attributes.length);

输出:1

document.write(x.item(0).attributes.getNamedItem(“category”);

输出:COOKING

x.item(0).attributes.removeNamedItem(“category”);

删除第一个book元素的category属性



Document对象代表整个XML文档。

Document对象的属性。

async—规定XML文件的下载是否应当被同步处理。

childNodes—返回属于文档的子节点的节点列表。

doctype—返回与文档相关的文档类型声明。

documentElement—返回文档的子节点。

firstChild—返回文档的首个子节点。

implementation—返回处理该文档的DOMImplementation对象。(IE没有)

lastChild—返回文档的最后一个子节点。

nodeType—返回节点类型。

nodeName—依据节点的类型返回其名称。

nodeValue—依据节点的类型返回其值。

text—返回节点及其后代的文本(IE独有)。

xml—返回节点及其后代的XML(IE独有)。



Document对象的方法

createAttribute(att_name)—创建拥有指定名称的属性节点,并返回新的属性对象。

createCDATASection(data)—创建CDATA区段节点。

createComment(data)—创建注释节点。

createDocumentFragment—创建空的DocumentFragment对象,并返回此对象。

createElement(node_name)—创建元素节点。

createEntityReference(name)—创建EntityReference对象,并返回此对象。(IE独有)

createTextNode(data)—创建文本节点。

getElementById(elementid)—查找具有指定的唯一ID的元素。

getElementsByTagName(node_name)—返回所有具有指定名称的元素节点。





例如:

var xmlDoc = loadXMLDoc("book.xml");



xmlDoc.async = false;



var book = xmlDoc.getElementsByTagName("book");

var newtext1="Special Offer & Book Sale";

var newCDATA=xmlDoc.createCDATASection(newtext1);

book[0].appendChild(newCDATA);



var newtext2="Revised September 2006";

var newComment=xmlDoc.createComment(newtext2);

book[0].appendChild(newComment);



var var newel=xmlDoc.createElement('edition');

var newtext3=xmlDoc.createTextNode('First');

newel.appendChild(newtext3);

book[0].appendChild(newel);



document.write("" + xmlDoc.xml + "");



Element 对象的属性

attributes—返回元素的属性的NamedNodeMap

childNodes—返回元素的子节点的NodeList

firstChild—返回元素的首个子节点。

lastChild—返回元素的最后一个子节点。

nextSibling—返回元素之后紧跟的节点。

nodeName—返回节点的名称。

nodeType—返回元素的类型。

ownerDocument—返回元素所属的根元素(document对象)。

parentNode—返回元素的父节点。

previousSibling—返回元素之前紧跟的节点。

tagName—返回元素的名称。

text—返回节点及其后代的文本。(IE-only)

xml—返回节点及其后代得XML。(IE-only)



Element对象的方法

appendChild(node)—向节点的子节点列表末尾添加新的子节点。

cloneNode(true)—克隆节点。

getAttribute(att_name)—返回属性的值。

getAttributeNode(att_name)—以 Attribute 对象返回属性节点。

getElementsByTagName(node_name)—找到具有指定标签名的子孙元素。

hasAttribute(att_name)—返回元素是否拥有指定的属性。

hasAttributes()—返回元素是否拥有属性。

hasChildNodes()—返回元素是否拥有子节点。

insertBefore(new_node,existing_node)—在已有的子节点之前插入一新的子节点。

removeAttribute(att_name)—删除指定的属性。

removeAttributeNode(att_node)—删除指定的属性节点。

removeChild(node)—删除子节点。

replaceChild(new_node,old_node)—替换子节点。

setAttribute(name,value)—添加新的属性或者改变属性的值。

setAttribute(att_node)—添加新的属性。





x=xmlDoc.getElementsByTagName('book');



for(i=0;i
{

attnode=x.item(i).getAttributeNode("category");

document.write(attnode.name);

document.write(" = ");

document.write(attnode.value);

document.write("
");

}



for(i=0;i
document.write(x[i].getAttribute('category'));

document.write("
");

}





xmlDoc=loadXMLDoc("/example/xdom/books.xml");

x=xmlDoc.getElementsByTagName('book');



document.write(x[0].getAttribute('category'));

document.write("
");



x[0].removeAttribute('category');



document.write(x[0].getAttribute('category'));

var attnode = x[1].getAttributeNode("category");

var y = x[1].removeAttributeNode(attnode);

document.write("" + xmlDoc.xml + "");



function get_lastchild(n)

{

x = n.lastChild;

while(x.noteType!=1){

  x = x.previousSibling;

}

return x;

}



function get_firstChild(n){
x = n.firstChild;

whild(x.nodeType!=1){

 x=x.nextSibling;

}

return x;

}



xmlDoc=loadXMLDoc("books.xml");

x=xmlDoc.getElementsByTagName("book")[0];

deleted_node=x.removeChild(get_lastchild(x));

document.write("Node removed: " + deleted_node.nodeName);



Attr对象

Attr 对象表示 Element 对象的属性。

name—返回属性的名称。

nodeName—返回节点的名称,依据其类型

nodeType—返回节点的类型。

nodeValue—设置或返回节点的值,依据其类型

ownerDocument—返回属性所属的根元素(document对象)。

specified—如果属性值被设置在文档中,则返回 true,如果其默认值被设置在 DTD/Schema 中,则返回 false。

value—设置或返回属性的值。

text—返回属性的文本。IE-only。

xml—返回属性的 XML。IE-only。



Text对象的属性

data—设置或返回元素或属性的文本。

length—返回元素或属性的文本长度。



Text对象的方法

appendData(string)—向节点追加数据。

deleteData(start,length)—从节点删除数据。

insertData(start,string)— 向节点中插入数据。

replaceData(start,length,string)—替换节点中的数据。

replaceData(offset)— 把一个 Text 节点分割成两个。

substringData(start,length)— 从节点提取数据。
Tags:
数组(Array):系列元素的有序集合;属性:

length:用于获取数组元素的个数,既最大下标加 1

方法:

sort(function):在未指定排序号的情况下,按照元素的字母顺序排列,如果不是字符串类型则转换成字符串,在排序;

reverse():颠倒数组中元素的顺序;

concat(array1,arrayn):用于将N个数组合并到array1数组中;

join(string):用于将数组中元素合并为字符串,string为分隔符,如省略参数,则直接合并,不加分隔;

slice(start,stop):用于返回数组中start到stop中的元素,如果参数为负,则表示倒数start或stop个元素;

toString():将数组所有元素返回一个字符串,其间用逗号分隔;

字符串(string):

属性 :

length:用于返回字符串的长度,用法与数组一样;

方法:

anchor():该方法创建如同HTML中的anchor一样的标记,格式 ,通过下列方法访问 string.anchor(chorName)
      例如 document.write("到google察看更多"+myLink.link("http://www.google.cn/"))

toUpperCase():将字符串转换成大写;

toLowerCase():将字符串转换成小写;

indexOf(a,b):从第 b 个字符查找字符 a 在字符串中出现的位置并返回,如果 b 省略,则默认从 0 位置查找;

chartAt(i):返回字符串中第 i 个字符;

substring(start,end):返回字符串中从 start - end 之间的全部字符(但是不返回end本身那个字符哦);

sub():将指定的字符串用下标格式显示;

日期(Date):

定义方法:

a: var newdt=new Date() -->创建时间对象并赋值为当前时间;
b: var newdt=new Date(milliseconds) --> 创建时间对象,且以GTM的延迟时间来设置对象的值,单位为毫秒;
c:var newdt=new Date(string) -->使用特定的时间字符串为新创建的时间对象赋值,其格式与Date对象的parse方法匹配;
d: var newdt=new Date(年,月,日,小时,分,秒,毫秒) -->按照年,月,日,小时,分,秒,毫秒 的顺序为对象赋值;

方法: 分 获取时间;设置时间;格式转换

A:获取时间

getDate() -----获取当前完整时间;
getYear()------获取当前的年
getMonths()----获取当前的月份
getDay()-------获取当前的日期 天
getHours()-----获取当前的小时
getMinutes()---获取当前的分钟
getSeconds()---获取当前的秒
getTime()------获取当前的时间,单位 秒
getTimeZoneOffset--获取当前的时区偏移信息

b:设置时间

对照上面的获取,把get换成 set 即可,例如 getDate() ---> setDate()

c:转换方法

toGTMString() ------转换成格林威治标准时间表达式的字符串;
toLocaleString()----转换成当地时间表达的字符串
toString()----------把时间转换成字符串
parse---------------从表示时间的字符串中读出时间
UTC-----------------返回从格林威治标准时间到指定时间的差距,单位为 毫秒


--------------------------------------------------------------------------------


属性:注意,数学对象中的属性是指读的

E (=2.7182) ------自然对数的底(具体意思,我不明白,唉,和数学密切的东西我都不明白,郁闷!)
LN10(=2.30259) ---10的自然对数;
LN2(=0.69315)-----2的自然对数;
PI(=3.1415926)----圆周率
SQRT1_2(=0.7071)--1/2的平方根
SQRT2(=1.4142)----2的平方根
LOG2E(=1.44269)---以2为底,E的对数
LOG10E(=0.43429)--以10为底E的对数

方法: 其实用得上的不多,郁闷,全部弄出来吧

sin(a) ---- 求a的正弦值
cos(a)------求a的余弦值
tan(a)------求a的正切值
asin(a)-----求a的反正弦值
atan(a)-----求a的反余弦值
exp(a)------求a的指数
log(a)------求a的自然对数
Pow(a,i)----求a的i次方(乘方)
round(a)----对a进行四舍五入运算
sqrt(a)-----求a的平方根
abs(a)------求a的绝对值
random()----取随机数
max(a,b)----取较大的数
min(a,b)----取较小的数

注意:函数的参数均是浮点类型,三角函数的参数为弧度值,而不是度

JavaScript的内置函数

escape() 与 unescape() :对字符串进行 编码与解码

eval(字符串):用于执行字符串所代表的运算或语句
       例如:var a=0; var str1="a+=a"; eval(str1);

parseInt() 和 parseFloat():将文本框的值转换成整数 或 浮点数

注意:parseInt()不是对数字进行四舍五入操作,而是切尾

isNaN():完整的E文是(is not a number),顾名思义是 判断字符串是否是数字,例如 if(isNaN("天轰穿系列教程"))

自定义对象:有初始化对象和定义构造函数的对象两种方法

a:初始化对象

例如: 对象={属性1:值1;属性2:值2;......属性n:值n} ,注意,每个属性\值对之间用分号隔开;

b: 定义构造函数的对象

例如:
function 函数名(属性1,属性2,。。。属性N){

this.属性1=属性值1;
this.属性2=属性值2;
this.属性n=属性值n;

this.方法名1=函数名1;
this.方法名2=函数名2;

}

注意:方法名和函数名可以同名,但是在方法调用函数前,函数必须已经定义好,否则会出错

为自定义的函数创建新的实例一样是使用 new 语句

浏览器对象
window对象:他属于中央级的了,处于所有对象的最高级

属性:主要的有如下

closed----------用于判断窗口是否关闭;
opener----------存放open()方法打开窗口的父窗口;
defaultstatus---状态栏默认显示的信息;
status----------状态栏当前显示的信息;
Document,Location,History---很重要,稍后详细说,要是不想等,直接看这里

方法:

alert(text)-------------弹出一个提示信息框
confirm(text)-----------确认信息框,参数为确认信息
prompt(text,default)----弹出输入对话框,参数为提示信息和缺省值

document对象:包括当前网页的各种特征,如标题\URL\背景\语言\修改时间等

属性:

title------------文档标题
lastModified-----文件最后修改时间
URL--------------文档对应的页面地址
Cookie-----------用来创建和获取Cookie信息
bgColor----------文档的背景色
fgColor----------文档的前景色
location---------保存文档所有的页面地址信息
alinkcolor-------激活连接的颜色
linkcolor--------链接的颜色
vlinkcolor-------已浏览过的链接的颜色

方法:

write(text)-----向文档写入文字或标签,不换行
writeln(text)---向文档写入文字或标签,在最后一个字符处换行
open()----------打开一个新文档 例如 open("地址","窗口名字","样式")
close()---------关闭当前文档


--------------------------------------------------------------------------------

Location对象: 包含当前文档所有的页面地址信息

属性:

protocol-----------通信协议
host---------------页面所在WEB服务器的主机名称
port---------------服务器通信的端口号
pathname-----------文档在服务器上的路径
hash---------------页面跳转的锚标记信息
searce-------------页面提交到服务器上搜索的信息
hostname-----------主机的名称和端口号,中间用冒号隔开
href---------------完整的URL地址

方法:

assign(URL)--------将页面导航到另一个地址上去
reload-------------刷新页面
replace(URL)-------使用指定URL的页面代替当前页面


--------------------------------------------------------------------------------

History:该对象包括以前访问过的URL信息

属性 :length,返回URL数量,方法主要是 go(n) ,通过该方法载入相对的页面
Tags:
  我们做技术,经常在写页面的时候需要多次刷新测试,可是浏览器都有自己的缓存机制,一般CSS和图片都会被缓存在本地,这样我们修改的CSS就看不到效果了,每次都去清空缓存,再刷新看效果,这样操作太麻烦了。在IE下我们可以直接去修改internet选项,到internet临时文件选项的设置中,将检查网页中的较新版本改成每次访问此页时检查。这样我们就不用去清空缓存,每次刷新都能看到最新的网页内容了。

  以下内容由BIWEB网站系统创始人ArthurXF倾情奉献,那么在firefox我们找遍了所有的设置选项,竟然没有发现向IE那样的每次访问此页检查的选项。那么我们怎么办呢?我看到很多朋友在firefox下确实是每次都清空缓存再刷新页面的。我在这里告诉大家一个方便的办法来解决这个问题。

1.在firefox的地址栏上输入about:config回车
2.找到browser.cache.check_doc_frequency选项,双击将3改成1保存即可。
那么这个选项每个值都是什么含义的。请看下面的解释:
0: Once per session
每个进程一次 每次启动Firefox时检查
1: Each time
每次访问此页时检查
2: Never
不检查
3: When appropriate/automatically
自动

这样我们就可以在firefox下不清空缓存,也能直接看到页面的变化了。是不是很方便啊?请多多支持BIWEB开源PHP网站系统!
Tags: , ,
1.document.formName.item("itemName") 问题
说明:IE下,可以使用document.formName.item("itemName")或document.formName.elements["elementName"];Firefox下,只能使用document.formName.elements["elementName"].
解决方法:统一使用document.formName.elements["elementName"].

2.集合类对象问题
说明:IE下,可以使用()或[]获取集合类对象;Firefox下,只能使用[]获取集合类对象.
解决方法:统一使用[]获取集合类对象.

3.自定义属性问题
说明:IE下,可以使用获取常规属性的方法来获取自定义属性,也可以使用getAttribute()获取自定义属性;Firefox下,只能使用getAttribute()获取自定义属性.
解决方法:统一通过getAttribute()获取自定义属性.

4.eval("idName")问题
说明:IE下,,可以使用eval("idName")或getElementById("idName")来取得id为idName的HTML对象;Firefox下只能使用getElementById("idName")来取得id为idName的HTML对象.
解决方法:统一用getElementById("idName")来取得id为idName的HTML对象.

5.变量名与某HTML对象ID相同的问题
说明:IE下,HTML对象的ID可以作为document的下属对象变量名直接使用;Firefox下则不能.Firefox下,可以使用与HTML对象ID相同的变量名;IE下则不能。
解决方法:使用document.getElementById("idName")代替document.idName.最好不要取HTML对象ID相同的变量名,以减少错误;在声明变量时,一律加上var,以避免歧义.

7.input.type属性问题
说明:IE下input.type属性为只读;但是Firefox下input.type属性为读写.

9.event.x与event.y问题
说明:IE下,even对象有x,y属性,但是没有pageX,pageY属性;Firefox下,even对象有pageX,pageY属性,但是没有x,y属性.
解决方法:使用mX(mX = event.x ? event.x : event.pageX;)来代替IE下的event.x或者Firefox下的event.pageX.

10.event.srcElement问题
说明:IE下,event对象有srcElement属性,但是没有target属性;Firefox下,event对象有target属性,但是没有srcElement属性.
解决方法:使用obj(obj = event.srcElement ? event.srcElement : event.target;)来代替IE下的event.srcElement或者Firefox下的event.target.

13.frame问题
以下面的frame为例:


(1)访问frame对象:
IE:使用window.frameId或者window.frameName来访问这个frame对象.
Firefox:只能使用window.frameName来访问这个frame对象.
另外,在IE和Firefox中都可以使用window.document.getElementById("frameId")来访问这个frame对象.

(2)切换frame内容:
在IE和Firefox中都可以使用window.document.getElementById("testFrame").src = "xxx.html"或window.frameName.location = "xxx.html"来切换frame的内容.

如果需要将frame中的参数传回父窗口,可以在frme中使用parent来访问父窗口。例如:parent.document.form1.filename.value="Aqing";

14.body问题
Firefox的body在body标签没有被浏览器完全读入之前就存在;而IE的body则必须在body标签被浏览器完全读入之后才存在.

例如:
Firefox:



IE&Firefox:




15. 事件委托方法
IE:document.body.onload = inject; //Function inject()在这之前已被实现

Firefox:document.body.onload = inject();

有人说标准是:
document.body.onload=new Function('inject()');

16. firefox与IE(parentElement)的父元素的区别
IE:obj.parentElement
firefox:obj.parentNode

解决方法: 因为firefox与IE都支持DOM,因此使用obj.parentNode是不错选择.

17.innerText在IE中能正常工作,但是innerText在FireFox中却不行.
解决方法:
if(navigator.appName.indexOf("Explorer") > -1){

   document.getElementById('element').innerText = "my text";

} else{

   document.getElementById('element').textContent = "my text";

}

18. FireFox中类似 obj.style.height = imgObj.height 的语句无效
解决方法:
obj.style.height = imgObj.height + 'px';

19. ie,firefox以及其它浏览器对于 table 标签的操作都各不相同,在ie中不允许对table和tr的innerHTML赋值,使用js增加一个tr时,使用appendChile方法也不管用。
解决方法:
//向table追加一个空行:
var row = otable.insertRow(-1);
var cell = document.createElement("td");
cell.innerHTML = " ";
cell.className = "XXXX";
row.appendChild(cell);

20. padding 问题
padding 5px 4px 3px 1px FireFox无法解释简写,

必须改成 padding-top:5px; padding-right:4px; padding-bottom:3px; padding-left:1px;

21. 消除ul、ol等列表的缩进时
样式应写成:list-style:none;margin:0px;padding:0px;

其中margin属性对IE有效,padding属性对FireFox有效

22. CSS透明
IE:filter:progid:DXImageTransform.Microsoft.Alpha(style=0,opacity=60)。

FF:opacity:0.6。

23. CSS圆角
IE:不支持圆角。

FF: -moz-border-radius:4px,或者-moz-border-radius-topleft:4px;-moz-border- radius-topright:4px;-moz-border-radius-bottomleft:4px;-moz-border-radius- bottomright:4px;。

24. CSS双线凹凸边框
IE:border:2px outset;。

FF: -moz-border-top-colors: #d4d0c8 white;-moz-border-left-colors: #d4d0c8 white;-moz-border-right-colors:#404040 #808080;-moz-border-bottom-colors:#404040 #808080;

25.ie支持document.all 而firefox 不支持
改用下面三个tag的其中一个来代替document.all
getElementsByTagName("tagName") 可以得到得到所有标签元素的集合
getElementById("idName")          可以按id得到某一元素
getElementsByName("Name")            可以得到按name属性得到某一元素

26、firefox 中使用innerHTML 的方法

document.all.online.innerHTML; //这种方法在IE中可以使用,但不是标准方法
document.getElementById("online").innerHTML; //这样firefox就能使用innerHTML了

27、eval()与window.execScript()执行脚本
IE、firerox均支持eval(),firefox不支持window.execScript()

解决:统一使用eval()

28、对事件处理函数的重写
解决:(例):如对document的onclick()重写,统一使用document.onclick = function(){…}
Tags: , ,
有时美容可以是件不昂贵的事情,它的成本可能降到最低,就比如我们平时吃的普通细盐,它就是上前很流行的一种美容妙方,下面我推荐几种盐美容方法:

一、盐亮肤   

洗脸后,把一小勺细盐放在手掌心加水3-5滴,再用手指仔细将盐和水搅拌均匀,然后沾着盐水从额部自上而下的搽抹,边搽边做环开按摩。几分钟后,待脸上的盐水干透呈白粉时状时,用温水将脸洗净,涂上保湿乳液或继续正常的护肤步骤。持续进行,每天早晚洗脸后各一次。   

这样有很好的清洁和去污效果,对于毛孔中积聚的油脂、粉刺、甚至是“黑头”都可以去掉。不过按摩时应该避开眼部周围的皮肤,而且敏感性皮肤谨慎些。千万不要把盐水弄到眼睛里去,以免造成眼结膜损伤。

二、盐明目   

做完正常的清洁后,打半盆温清水,撒上少量盐让它融化,将脸部浸泡在淡盐水中,在水中睁开眼睛,上下左右活动眼球达到用淡水洗眼的效果。   

不出二个星期,你会发现你的眼睛变得明亮且炯炯有神起来,这才是名副其实的“电眼美女”。

三、盐战痘   

其实对于背部长有青春痘的“顽疾”,盐一样也有用。入浴后让身体充分温热,待毛孔张开后多抹些盐在后背,各个角落都要抹到。用浴刷按摩1分钟,不要太用力,只要让皮肤及刷子间的盐分移动即可,然后用海绵蘸上淡盐水,贴在背上10分钟,用清水洗干净。   

洗几次再看看,背上的痘痘慢慢地被攻克了。

四、盐控油   

对于分泌油脂旺盛的T字部位,即使到了秋天,很多油性皮肤的“产油量”还是源源不断的。对于局部区域,可以用细盐抹在事先润湿的皮肤上,轻轻按摩后休息3分钟,然后在鼻翼两侧毛孔张开的部位用中指指腹由下向上做挤压式按摩。   

“油量”真的会随着你的坚持而减产哦。
Tags:
分页: 43/128 第一页 上页 38 39 40 41 42 43 44 45 46 47 下页 最后页 [ 显示模式: 摘要 | 列表 ]