簡體   English   中英

jQuery具有多個元素和多個事件的相同功能

[英]jQuery same function for multiple elements and multiple events

每當用戶點擊其中一個錨元素時,我都會有一個函數,比如這個

$('.element').on('click', function(){
// do stuff here
});

如果一個select元素改變了它的值,我想做同樣的事情,比如這個

$('select').on('change', function(){
// do same stuff here
});

我知道我能做到

$('.element', 'select').on('click change', function(){
// do stuff here
});

但是當我點擊select元素並且我不想混淆用戶並做一些事情時,這也會觸發,就在select元素值發生變化時。

不必讓你的函數內聯。

var doStuff = function() {
  // do stuff here
});

$('.element').on('click', doStuff);
$('select').on('change', doStuff);

處理此問題的最可讀方法之一是創建單獨的函數:

function doStuff(){
 //do stuff here
}

$('.element').on('click', function(){
  doStuff();
});

$('select').on('change', function(){
  doStuff();
});

通過為該函數提供一個漂亮,有意義的名稱,這也為您提供了一個很好的機會,使您的代碼更加清晰。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM