javascript - 如何将单个函数附加到多个元素?

标签 javascript

如果我有两个会触发相同功能的 anchor 标记(即关闭导航栏的多个按钮),我将如何将这两个元素与事件绑定(bind)?没有 JQUERY

html:

<a href="#" id="ctl_one">Close Nav</a>
<ul id="nav">
  <li>Nav One</li>
  <li>Nav Two</li>
  <li>Nav Three</li>
</ul>
<a href="#" id="ctl_two">Close Nav</a>

JS:

var ctlOne = document.getElementById("ctl_one");
var ctlTwo = document.getElementById("ctl_two");
var both = ctlOne || ctlTwo //<-- this is what I tried and failed.

both.onClick = function(){
  toggleNav();
}

function toggleNav(){
  // either close or open nav <UL>
}

再说一次,我知道如何在 jQuery 中做到这一点。我正在寻找原生 JavaScript 方法。

最佳答案

var ctlOne = document.getElementById("ctl_one");
var ctlTwo = document.getElementById("ctl_two");

ctlOne.onClick = ctlTwo.onclick = toggleNav;

关于javascript - 如何将单个函数附加到多个元素?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18343419/

相关文章:

javascript - Chrome 中的 CSS#/HTML5 嵌套表格和子填充

javascript - 函数中 THIS 关键字的范围?

javascript - Facebook API 使用 Javascript sdk 发布操作

javascript - 将 web sql 结果显示为 html<li>

javascript - 带有url的页面加载的过渡效果

javascript - 从 atom Electron 中的 webview 访问 DOM

javascript - 当元素未直接加载时,事件不起作用

javascript - Rails 3 form_tag 与 'remote: true' 以 HTML 形式转到 Controller (在平衡支付回调之后?)

javascript - 使用 Javascript 和 Canvas 重复绘图

javascript - 递归函数完成后退出node.js