如何将此脚本与多个ID一起使用?不适用于我尝试添加的第二个ID
<script type="text/javascript">
window.onload = (function () {
var elem = document.getElementById("id1","id2").onclick = function()
{
fbq('track', 'InitiateCheckout');
}
});
</script>
答案 0 :(得分:5)
您可以使用querySelectorAll
按ID分别选择多个项目:
var items = document.querySelectorAll('#id2, #id3, #id5');
for (var i = 0; i < items.length; i++)
{
items[i].onclick = function() {
this.innerText = this.innerText + '!';
};
}
2, 3, 5 are working:
<p id="id1">I am 1</p><p id="id2">I am 2</p><p id="id3">I am 3</p><p id="id4">I am 4</p><p id="id5">I am 5</p>
但是,创建一个公共类听起来要好得多。
答案 1 :(得分:3)
getElementById只接受一个ID,但您可以这样做以选择多个元素:
document.querySelectorAll('#id1, #id2');
...但你不应该使用它为每个元素创建一个事件监听器。最好为整个文档创建一个事件监听器,例如:
document.addEventListener('click', handleClickEvents, false);
function handleClickEvents(evt) {
myEventTarget = event.target;
if (myEventTarget.id === 'id1') {
} else if (myEventTarget.id === 'id2) {
}
}
......甚至更好,使用像React或Angular这样的框架。
答案 2 :(得分:1)