- 1、对于元素节点,获取其某属性的值有多种方式,如下所示:
- 1、 element.attributes[下标].value
- 2、 element.attributes['属性名'].value
- 3、 element.getAttributeNode('属性名').value
- 4、 element.getAttribute('属性名')
- 2、DOM操作中查找元素的方式
- 1、通过 HTML中的信息选取元素,比如:
- a) getElementById()方法:根据元素的 id属性值查询单个节点;
- b) getElementsByTagName()方法:根据元素标签的名称查询节点;
- c) getElementsByName()方法:根据元素 name属性的值查询节点。
- 2、 通过 CSS类选取元素
- a) getElementsByClassName('className')方法:根据class名称选取元素;
- b) querySelector('selector')和 querySelectorAll('selector')方法:根据CSS选择器选择元素。
- 3、 通过 document对象选取,如 document.all、 document.body等;
- 4、 通过节点遍历选取节点,如 parentNode、 firstChild等。
- 2++:增删改查
- (1)创建新节点\
- createDocumentFragment() //创建一个DOM片段\
- createElement() //创建一个具体的元素\
- createTextNode() //创建一个文本节点\
- (2)添加、移除、替换、插入、复制\
- appendChild() //添加\
- removeChild() //移除\
- replaceChild() //替换\
- insertBefore() //在已有的子节点前插入一个新的子节点\
- cloneNode() //复制
- (1)创建新节点\
- 1、通过 HTML中的信息选取元素,比如:
- 3、按钮添加onclick事件的方法:
-
1、直接在 HTML代码中添加,如:javascript:funcA() 其中, funcA()为一个有效函数。
-
2、在js代码中添加,如:btn.onclick= funcA; 或者 btn.onclick= function() {};
-
3、 定义监听函数,代码如:btn.addEventListener( 'click' , function( ) { }) ;
-
- 4、使用 js代码为页面动态添加5个按钮,每个按钮上的文本为“button1”、“button2”…“button5”。单击每个按钮时,分别弹出数字1、2…5。
for (var i= 1; i< 6; i++) {
var input = document.createElement( 'input' ) ;
input.setAttribute("type", "button") ;
input.setAttribute("value", "button" + i);
(function (n) {
input.onclick= function () { alert(n); };
})(i);
document.body. appendChild(input) ;
}
- 5、文本框验证:
- 页面有文本框,需要限制该文本框中只能录入数字keyCode48-57,即:如果用户按下数字以外的其他键,文本框中无法录入;如果用户粘贴进非数字字符,也需要进行过滤。
- 首先,onkeypress事件,用于在录入文本时做出判断;onkyeup事件,用于过滤粘贴进来的文本。 HTML代码如下所示:
function digitOnly(event) {
var code= event.keyCode || event.which; //ie||firefox
if( (code<48) || (code>57) ) {
if(event.preventDefault) { //firefox
event.preventDefault() ;
}
}
/ /当按键弹起时 , 剔除输入中的非中文字符——解决复制粘贴进来的非数字
function filterChar(input){
input.value= input.value.replace(/\D/g, ' ' ) ;
}
- 6、每隔一秒钟弹出一个对话框,弹出过程持续5秒钟(即5秒后就不弹了)
var id= setInterval(
function() {
alert("Hello JavaScript");
},1000)
setTimeout(
function() {
clearInterval(id) ;
}, 5*1000)