$('#homeNavBar').on('click', onSiteLoad());
function onSiteLoad() {
$('#dataHolder').html('');
userLoginMenu.html('');
var h1 = $('<h1>').text('Welcome');
var span = $('<span>').text('Welcome to our book library');
dataHolder.append(h1).append(span);
}
我想直接在change函数中调用函数onSiteLoad()。
它让我这样做的唯一方法是这样的:
$('#homeNavBar').on('click', function () {
$('#dataHolder').html('');
userLoginMenu.html('');
var h1 = $('<h1>').text('Welcome');
var span = $('<span>').text('Welcome to our book library');
dataHolder.append(h1).append(span);
});
最佳答案
您需要传递函数引用,现在您正在调用该函数,并将其返回值传递给事件处理程序
$('#homeNavBar').on('click', onSiteLoad);
//^^^^ Parenthesis removed
关于javascript - JQuery on ('click' )直接调用函数,而不是在事件监听器中定义它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44517113/