在页面加载而不是单击事件时调用函数

时间:2014-12-10 17:31:50

标签: javascript jquery selector

我试图通过click事件调用此函数,但由于某种原因,它在页面加载时被调用。我完全不知道为什么我的功能会以这种方式作出反应。

这是我的功能

var registerTab = function(panel){
    var active = 'off';
    if($('#'+panel).css('left') <= '0'){
        $('#'+panel).animate({left: '0'});
        active = 'on';
    } else {
        $('#'+panel).animate({left: '-380px'});
    } 
};

$(function() {
    tabRegister.on('click', registerTab('sidePanel'));
});

奇怪的是,如果我在删除传递的变量并且硬编码选择器时调用它,它工作正常,这对我来说再也没有。请任何帮助都会非常有帮助,并为我节省一些头发。

1 个答案:

答案 0 :(得分:3)

registerTab('sidePanel')

此调用将立即调用该函数。我想你真正想要的是:

tabRegister.on('click', function () { 
    registerTab('sidePanel')
});