从*选择中排除某些TagNames

时间:2011-06-03 00:05:09

标签: javascript syntax wildcard

使用声明:

var children = document.getElementById('id').getElementsByTagName('*');

我想排除所有< BR>元素,是否有 getElementsByTagName 的语法可以让我这样做,或者其他一些好方法?

4 个答案:

答案 0 :(得分:2)

您不能使用本机功能,但您可以轻松过滤。

http://jsfiddle.net/idbentley/ncH95/4/

使用jQuery或类似的库(Zepto是一个很好的小型lib)会更容易,但如果你想使用原始的javascript,你可以使用上面的。

答案 1 :(得分:1)

如果您使用像jquery这样的框架,您可以

$('#id').children().not('br');

答案 2 :(得分:1)

使用jQuery,你可以做到:

$('#id *').not('br');

答案 3 :(得分:0)

没有特殊的操作员,但您可以轻松过滤。

(function () {
    var element = document.getElementById('id');

    if (element.tagName === "br")
        throw "AHHHHH!!! IT'S A BR AHHHHH!!!!!!";

    // Do stuff if it's not a br.
}).apply(this);