js的classname和setattribute都可以给一个dom元素设置class属性吧,

js的classname和setattribute都可以给一个dom元素设置class属性吧,,第1张

属性 *** 作两种方式:

1. obj.xxx    俗称点 *** 作,比如: obj.className = 'red'

2. obj.setAttribute(name,value)  比如: obj.setAttribute('class','red')

却别在于:

.  *** 作不能 *** 作自定义属性

attribute可以

对于这里的class *** 作,其实是没什么区别的,建议用className,或者用H5里面提供的

classList *** 作class

方法一:

使用DOM.setAttribute("class","类名")

方法二:

DOM.classList.add("类名")

方法一给DOM元素添加类名会覆盖原有的类名

方法二 可以给DOM元素添加一个类名后 还可以在继续给DOM元素添加新的类名 并且不会覆盖已有的类名

概念:把要添加的节点添加到指定父级里面的最后面,所以也叫追加。

使用方式:fatherdom.appendChild( insertdom )。

兼容性:所有浏览器都支持此方法。

概念:把要插入的节点添加到指定父级里面的指定节点之前。

使用方式:fatherdom.insertBefore( insertdom,chosendom )。

兼容性:所有浏览器都支持此方法,但是值得注意的是,如果第二个参数节点不存在,在IE和Safari下会把要添加的节点使用appendChild()方法追加到指定父级中,而其他主流浏览器(Firefox、Chrome、Opera等)下会报错,所以在插入节点的时候,需要先判断第二个参数节点是否存在

效果

注意:很多人都认为设置disabled="true"是为启用,设置为“false”时为禁用,这是错的。

方法1:

var divs = document.getElementByTagName('div')//获得文档中所有的div,结果divs为数组

var div //声明变量div用来存放你要的那个div

for(int i=0i<divs.lengthi++){ //遍历divs数组

if(divs[i].className=='movemove'){

div==divs[i]//如果数组中当前div元素的class是movemove,就赋给div变量

break //退出遍历

}

}

方法2:

用XPath去试试看。我对XPath不熟,具体怎么弄不会


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11877615.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存