2

下面提到的是get the element通过Class Name

var Tag = replaceContentInContainer('className');

function replaceContentInContainer(matchClass) {
    var elems = document.getElementsByTagName('*'), i;
    for (i in elems) {
        if ((" " + elems[i].className + " ").indexOf(" " + matchClass + " ") > -1) {
        }
    }
}

我有这个标签onclickstyle属性。

我的查询是,如何使用 删除/添加onclick/style此标签中的属性JavaScript

4

4 回答 4

2

HTML5 定义了一个方法,getElementsByClassName(),它允许我们根据类属性中的标识符选择文档元素集。

var elts = document.getElementsByClassName("className");

for(var e = 0; e < elts.length; e++) { // For each element
   var elt = elts[e];
   elt.removeAttribute("style");
   elt.removeAttribute("onclick");
}

removeAttribute()
removeAttribute() 从此元素中删除一个命名属性。尝试删除不存在的属性会被静默忽略。

setAttribute()
此方法将指定属性设置为指定值。如果该名称的属性不存在,则创建一个新属性。

hasAttribute()
如果此元素具有具有指定名称的属性,则此方法返回 true,否则返回 false。

https://developer.mozilla.org/en/DOM/element.removeAttribute

于 2012-04-16T10:51:51.573 回答
1
​$(function(){
    $(".className").removeAttr("onclick style");       
});​

http://jsfiddle.net/Curt/h6CT9/

于 2012-04-16T10:36:43.490 回答
1

通过使用 JQuery,您可以使用类选择器,然后使用 removeattr 函数删除关联的属性:

$('.className').removeAttr('click style')

添加和删​​除一些类:

$('.className').addClass('className').removeClass('newlyaddedClass')
于 2012-04-16T10:37:14.693 回答
0
var Tag = replaceContentInContainer('className');
for(var i = 0; i < Tag.length; i++){
   Tag[i].removeAttribute('onclick');
   Tag[i].removeAttribute('style');
}

更新

对不起,我看错了你的代码。我假设你的函数正在返回一个具有该类名的元素数组......所以,使用你的函数:

function replaceContentInContainer(matchClass) {
    var elems = document.getElementsByTagName('*'), i;
    for (i in elems) {
        if ((" " + elems[i].className + " ").indexOf(" " + matchClass + " ") > -1) {
           elems[i].removeAttribute('onclick');
           elems[i].removeAttribute('style');
        }
    }
}
于 2012-04-16T10:30:40.177 回答