如何判断元素是否在DOM中的另一个元素之前

时间:2014-10-27 15:34:44

标签: javascript jquery dom

如何检查元素是否在DOM中的另一个元素之前?

例如

<div>
    <div id='first'></div>
    <div id='second'></div>
</div>
<div id='third'></div>

second元素在first之后和third之前。你怎么用jQuery来检查呢?

1 个答案:

答案 0 :(得分:0)

没有jQuery函数,但您可以通过添加以下代码轻松实现它:

(function ($) {
    $.fn.isBeforeElement = function (elem) {
        if (typeof(elem) == "string") elem = $(elem); //just in case of bad input
        return this.add(elem).index(elem) > 0;
    }
})(jQuery);

然后你可以打电话

$('#first').isBeforeElement($('#second')); //returns true
$('#second').isBeforeElement($('#third')); //returns false
$('#third').isBeforeElement($('#second')); //returns true
//etc..