0

有人可以告诉我如何使用 on() 实现隐藏功能。我试过了:

    $(document).on('hide','selector');
    $(document).on('selector', function(){
        $(this).hide();
    });

想知道如何使用 on() 正确应用这样的功能;

4

2 回答 2

2

.on函数用于将事件连接到某物。您甚至没有告诉它要连接什么。您希望元素何时隐藏?假设您希望在单击按钮时隐藏它。

HTML:

<div id="a">This will hide</div>
<button id="b">Hide!</button>​

jQuery:

$(document).on('click', '#b', function() {
    $('#a').hide();
});​

如果您只是想隐藏元素,而不是由事件或任何东西触发,只需调用$('#a').hide();它就会隐藏元素。当然,更改您的选择器以使用您的 HTML。

小提琴:http: //jsfiddle.net/gromer/Zq756/

编辑:

有趣的。您是否可以控制动态添加的元素?如果是这样,我会为您希望在添加时隐藏的元素添加一个类。就像是:

<div class="initial-hide">This div should be hidden when it's loaded.</div>

然后在你的CSS中,添加这个:

.initial-hide {
    dislay: none;
}

然后,每当一个元素与initial-hide该类一起加载时,它就会被隐藏。请参阅此更新的小提琴:http: //jsfiddle.net/gromer/Zq756/1/。添加按钮将说明添加的类将如何帮助您。

于 2012-10-18T16:00:09.790 回答
1

javascript中没有要捕获的事件on hide或事件。on show您所做的是捕获元素的隐藏和显示并将自定义功能附加到它。

$('element').hide(delay, onHide);

function onHide(){
    //do whatever
}

$('element').show(delay, onShow);

function onShow(){
    //do whatever
}
于 2012-10-18T15:58:42.593 回答