.delegate和.closest问题

时间:2012-10-25 16:54:18

标签: jquery jquery-delegate

$('document').delegate('.seeMore a', "click", function() {
    var $allTabs = $(this).closest('.globalTabs').find('.allTabs');
    $allTabs.slideDown('slow'); 
});

DOM元素是:

<div class="globalTabs">
    <ul>
        <li>
            <a>some link</a>
        </li>
        <li>
            <a>some link</a>
        </li>
        <li class="seeMore">
            <a>some link</a>
        </li>
    </ul>
    <div class="tabContent">
        some content
    </div>
    <div class="allTabs">
        mutliple links
    </div>
</div>

上述函数位于.each中 - 因此对于每个.globalTabs,此函数应运行。

但似乎根本没有找到元素,即使页面上只有一个元素,seeMore a也没有任何与之相关的事件(使用视觉事件来确定)。

思想?

(我应该提到绑定有效,但是生活没有)。

1 个答案:

答案 0 :(得分:4)

第一个选择器中document没有引号:

// v------v-------- 'document' should be an object, not a string
 $(document).delegate(".seeMore a", "click", function() { ... });