我想使用純Javascript將單個函數綁定到多個事件。是否有一種純Javascript方法將一個函數應用於多個元素的事件?
在jQuery中,我會用:
$('.className').click(function(e){ //do stuff });
因此,使用純JS我想:
document.getElementsByClassName('className').onclick = function(e){ //do stuff };
不工作,因爲getElementsByClassName
返回一個數組,而不是一個DOM對象。
我可以通過數組循環,但這似乎過於冗長,就像它不應該是必要的:
var topBars = document.getElementsByClassName('className');
for(var i = 0; i < topBars.length; i++){
topBars[i].onclick = function(e){ //do stuff };
}
是否有使用純JavaScript來完成這個標準呢?
不是,沒有。 –
jQuery做了相同的循環....只有它在引擎蓋下才能做到這一點 – charlietfl
這正是jQuery所做的。但是你可以使用'Array.map.call()'。但它不是真的更慢/更快。 – Mouser