5
我想要達到的等效循環(香草JS):綁定事件到多個元素,而
$('div').on('click', function() {
// Do something
});
但是,如果沒有jQuery的。我最初的想法是使用for
循環來遍歷集合中的所有元素,但我的猜測是沒有使用循環(某種本地方法?)可以更好地實現這一點。
var elems = document.getElementsByTagName('div');
function someEvent() { // Generic function to test against
alert('event fired');
}
for (var i=0, j = elems.length; i < j; i += 1) {
elems[i].addEventListener("click", someEvent);
}
有沒有一個更優雅的方式做到這一點,而不包括一個庫?
我認爲它是或者將事件綁定到包含所有期望元素(例如body)的父元素並在事件中使用'target'屬性。 – JCOC611
您必須進行循環或委託,但當然您可以編寫自己的包裝函數,以便每次需要執行此操作時都不必在整個腳本中重複循環代碼。請注意,jQuery的'.on()'方法在內部循環。 – nnnnnn