初学者:如何使用JavaScript删除包含特定类的节点

Ene*_*oma 2 javascript jquery greasemonkey

我有一个列表,每个bock的构造如下.有些街区有一个<span class="protected-icon"></span>.
我想制作一个非常简单的greasemonkey插件来删除该块.

所以,我的问题是使用Javascript如何删除/隐藏the entire block(<div data-item-type="user" class="js-stream-item stream-item"></div>包含它?

<div data-item-type="user" class="js-stream-item stream-item">
<div class="user-content-rest">
    <span class="user-name">
         <span class="protected-icon"></span>
      </span>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)

Bla*_*ger 5

没有jQuery怎么做:

var p = document.getElementsByClassName('protected-icon');
for (var i=p.length; --i>=0;) {
    p[i].parentNode.removeChild(p[i]);
}
Run Code Online (Sandbox Code Playgroud)

http://jsfiddle.net/sRs4s/1/

更新如果要删除整个stream-item块,则必须循环到它:

var p = document.getElementsByClassName('protected-icon');
var cstr = "stream-item";
for (var i=p.length; --i>=0;) {
    var n = p[i];
    while(n.className.split(" ").indexOf(cstr)==-1) { // won't work in older browsers
        n = n.parentNode;
    }
    n.parentNode.removeChild(n);
}
Run Code Online (Sandbox Code Playgroud)

http://jsfiddle.net/sRs4s/3/

查看查找项目是否在JavaScript数组中的最佳方法?如果您需要支持旧浏览器.


归档时间:

查看次数:

5311 次

最近记录:

14 年,2 月 前