JS 入门四
1.JS代码解析
javascript作为一种脚本语言可以放在html页面中任何位置,但是浏览器解释html时是按先后顺序的,所以前面的script就先被执行。比如进行页面显示初始化的js必须放在head里面,因为初始化都要求提前进行(如给页面body设置css等);而如果是通过事件调用执行的function那么对位置没什么要求的。
2.JS变量
变量命名规则:
1.变量必须使用字母、下划线(_)或者美元符($)开始。
2.然后可以使用任意多个英文字母、数字、下划线(_)或者美元符($)组成。
3.不能使用JavaScript关键词与JavaScript保留字。
注意:
1. 在JS中区分大小写,如变量mychar与myChar是不一样的,表示是两个变量。
2. 变量虽然也可以不声明,直接使用,但不规范,需要先声明,后使用。
3.JS 操作HTML样式
语法:Object.style.property=new style
注意-->JS中调用样式时,使用连字符的属性名称需要改为驼峰式的名称才能正常使用,如mychar.style.backgroundColor,css中的background-color要更改为backgroundColor,去连字符,第二个单词首字母大写。
4.控制类名
语法:object.className=classname
它可以获取class类名,还可以为某个元素指定一个CSS样式来改变元素的外观。
5.重置 removeAttribute
//定义"取消设置"的函数 function CancelSet(){ var mymes=confirm("是否要取消以上所有的设置:"); if(mymes==true){ var mytxt=document.getElementById("txt"); // mytxt.removeAttribute("display","height","width","color","backgroundColor") mytxt.removeAttribute("style"); }else{ alert("你取消了设置") } }
Obj.removeAttribute()这个是用来删除指定属性的,所以这里去掉style属性写为mytxt.removeAttribute("style")。
和Obj.setAttribute()这两个
通过对比,我们可以看出 setAttribute('class', 'foo')
,removeAttribute('class')
,classList
的操作都是针对整个class
属性的,而 classList
下的方法 add()
、 remove()
则是针对 classList
数组进行操作的。所以,在使用时,如果是不管元素上面的 class
有什么,只需要将其设置成我们想要的属性时,我们可以使用 setAttribute('class', 'foo')
和 classList
来设置。当然,也可以通过正则或者其他方法,达到替换某个类的效果(如 'foo boo'
-> 'foo voo'
),但是这样本质上是整个替换,而 classList.add()
和 classList.remove()
则更加直接地对某个类进行增加、修改或删除,也避免了重复添加相同类的尴尬。
http://blog.csdn.net/pan_junbiao/article/details/9262637
6. getAttribute &setAttribute
语法:elementNode.getAttribute(name) 通过元素的属性名称获得属性的值,name要加引号。
1)elementNode:使用getElementById()、getElementsByTagName()等方法,获取到的元素节点。
2).name:要想查询的元素节点的属性名字
语法:elementNode.setAttribute(name,value)(name和value要加引号)
说明:
1) name: 要设置的属性名。
2) value: 要设置的属性值。
注意:
1.把指定的属性设置为指定的值。如果不存在具有指定名称的属性,该方法将创建一个新属性。
2.类似于getAttribute()方法,setAttribute()方法只能通过元素节点对象调用的函数。