2
$('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也没有任何事件与之相关(使用视觉事件来确定)。

想法?

(我应该提到 bind 有效,但 live 无效)。

4

1 回答 1

4

document在第一个选择器中不需要引号:

// v------v-------- 'document' should be an object, not a string
 $(document).delegate(".seeMore a", "click", function() { ... });
于 2012-10-25T16:55:50.637 回答