只写一次“return false”来处理点击许多链接
only writing "return false" once to handle clicking on many links
与其多次编写return false;
,有没有办法设置链接集合,以便如果单击其中任何一个,单击功能将return false;
?我仍然希望将大多数链接return true
以便显示return true
与 return false
将不胜感激。
目标是编写更少的代码。我也想知道这是否是一个坏主意,因为我无法理解的原因。
最简单的方法是将一个事件侦听器绑定到文档,并检查目标:http://jsfiddle.net/gKZ7q/
document.addEventListener('click', function(e) {
if (e.target.nodeName.toUpperCase() === 'A') e.preventDefault();
}, false);
对于具有嵌套元素的锚点,必须添加一个额外的循环:
var targ = e.target; do { if (targ.nodeName.toUpperCase() === 'A') { e.preventDefault(); break; } } while ((targ = targ.parentNode) !== document.documentElement); // document.body should be fine. Using document.documentElement in case // that a fool places an anchor outside the <body>
- 链接也可以通过密钥事件触发。
相关文章:
- IE7 preventDefault()无法处理跳过链接
- 链接无法处理图像
- 当链接javascript承诺时,如何处理then()函数中的条件
- 通过Rails中的自定义Jquery对话框处理链接的确认
- $q.reject和处理AngularJS链接承诺中的错误
- 对链接的 svg 进行动画处理不起作用;内联时工作正常
- 如何使用onClick处理程序在React组件中创建链接
- YUI3-具有相同类的链接的点击事件处理
- e.target只处理链接
- Javascript的Haskell处理“;点击“;以获取链接
- 使用运行时创建的链接来触发ASP.Net中隐藏按钮的单击处理程序
- 使用带有哈希标签的链接处理类似Facebook的按钮信息(标题和图像)
- 如何自动单击 AJAX 响应处理程序中自动生成的链接
- jQuery 选择没有任何 JS 事件链接的链接,以便 PJAX 仅处理链接
- Ajax不处理链接
- jQuery slideDown,不处理链接
- 用JavaScript处理链接
- Twitter处理链接的方式:点击然后AJAX,打开一个新的选项卡然后满载
- 如何使用JQuery来处理链接上的点击,该链接的id以特定字符串开头
- AngularJS后处理链接