這裏真正的基本東西。我想給一個點擊函數一個名字並給它分配一些參數。目標是代碼的可重用性,這樣我就只能編寫一個通用的函數來執行常見的任務,例如讓用戶刪除各種數據。javascript取消匿名點擊功能
這裏是一個jsfiddle向你展示我的意思。
而這裏的代碼:
的HTML:
<button>delete this</button>
<div data-id="3" class="delete">something bad</div>
<div data-id="4" class="delete">something else bad</div>
和JS:
// this function would be loaded on my site's template and therefore would be available across my entire site.
function deleteThis(data_id){
$('button').on('click', 'button', function(){
$('div[data-id="'+data_id+'"]').hide();
});
}
var clicked_id=3;
function deleteThis(clicked_id);
// this function would be called on the various pages where users can delete things and this variable, clicked_id, would be assigned=3 by the user's action on that page.
我怎麼給這個按鈕點擊事件的名稱?
更新謝謝大家! $('button')
應該是$(document.body)
或按鈕的父元素。如果你做了簡單的改變,它就可以工作。你也可以像邁克爾布恩建議的那樣做。
您在jsFiddle中的代碼與此處不同。你已經制作了你的函數名,使它只在函數本身內部可用。擺脫函數的外部'()()'部分。另外,你正在使用'on'的事件委託版本。這意味着'click'按鈕只有在點擊了*後代*按鈕時纔會運行。顯然你沒有按鈕內的按鈕。 – 2012-04-20 00:04:42
...更新代碼:http://jsfiddle.net/fz5ZT/40/ – 2012-04-20 00:06:20