2015-09-03 51 views
0

我有這樣的功能:與參數一起傳遞事件的功能

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

    ....... 
} 

在頁面加載我叫它像這樣:

openQv(lookHash,slideHash); 

,但我也把它當用戶點擊的元素等所以,但在這個我不需要傳遞任何參數。

$(document).on('click', '.open-qv', openQv); 

現在,我不知道如何添加e.preventDefault();這種情況下,當用戶點擊提供跳轉到頁面的頂部。

任何想法?

+2

你看看在[jQuery的'on'文檔】(HTTP ://api.jquery.com/on/)呢?它應該讓你開始。 – Jeroen

+0

「openQv」的第一個參數,你命名'lookHash'實際上就是你正在談論的'e'。 – Mjh

+0

jQuery將'event'對象作爲第一個參數調用你的函數。所以在你的情況下,事件將在'lookHash'中。快速修復:函數openQv(e,lookHash,slideHash)'。當你直接調用它通過'null'並在裏面做'if(e)e.preventDefault()'。 –

回答

5

沒有解決方法,你必須調用換到openQv在呼籲event.preventDefault()第一個功能:

$(document).on('click', '.open-qv', function(e) { 
    e.preventDefault(); 
    openQv(); 
});