传递事件以及要运行的参数

use*_*021 0 javascript jquery events preventdefault

我有这个功能:

 function openQv(lookHash,slideHash){
         console.log(lookHash)
         console.log(slideHash)

   .......
}
Run Code Online (Sandbox Code Playgroud)

在页面加载时我称之为:

 openQv(lookHash,slideHash);
Run Code Online (Sandbox Code Playgroud)

但是当用户点击这样的元素时我也会调用它,但在此我不需要传递任何参数.

$(document).on('click', '.open-qv', openQv);
Run Code Online (Sandbox Code Playgroud)

现在,我不知道如何e.preventDefault();为这种情况添加,因为当用户点击提供跳转到页面顶部时.

有任何想法吗?

hai*_*770 5

没有解决方法,您必须将调用包装在首先调用openQv的函数中event.preventDefault():

$(document).on('click', '.open-qv', function(e) {
    e.preventDefault();
    openQv();
});
Run Code Online (Sandbox Code Playgroud)