在页面加载时触发jQuery事件

时间:2013-05-30 01:27:17

标签: javascript jquery

我有以下jQuery:

// change the number of finished and missing assets
$('.add-requirements .overall-status .status-dropdown li').live('click', function() {
    var remaining_titles = $('.item-section.finished').length;
    $('.add-requirements .remaining-titles').text(remaining_titles);
});

每次更改状态下拉列表时都会触发。如何在页面加载时将其激活?

3 个答案:

答案 0 :(得分:1)

只需链接trigger('click')即可触发第一页加载的点击:

$('.add-requirements .overall-status .status-dropdown li').live('click', function() {
    var remaining_titles = $('.item-section.finished').length;
    $('.add-requirements .remaining-titles').text(remaining_titles);
}).trigger('click');

但你真的应该使用on()

$('closest_non_dynamic_parent').on('click', 'your_freakishly_long_selector', function() {

答案 1 :(得分:1)

根据我的理解,您希望更新页面加载的剩余计数,并假设finished状态已预先设置在所需元素上。

我将以另一种方式解决这个问题

$('.add-requirements .overall-status .status-dropdown li').live('click', updateRemaining);
updateRemaining()

function updateRemaining(){
    var remaining_titles = $('.item-section.finished').length;
    $('.add-requirements .remaining-titles').text(remaining_titles);
}

答案 2 :(得分:0)

有点冗长,但这对我有用:

var remaining_titles_section = $('.add-requirements .remaining-titles');
remaining_titles_section.text($('.item-section.finished').length);
$('.add-requirements .overall-status .status-dropdown li').live('click', function() {
    var remaining_titles = $('.item-section.finished').length;
    remaining_titles_section.text(remaining_titles);
});