【问题标题】:Common function to disable links double clicking禁用链接双击的常用功能
【发布时间】:2016-08-03 23:07:51
【问题描述】:

在我的应用程序中,我需要禁用双击 href 链接。有许多使用 primeface 链接的 jsf 页面。所以到处改变并不是一个可行的解决方案。 任何人都可以建议,是否有任何我们可以实现此功能的通用功能。

我尝试了覆盖 window.onbeforeunload 函数。但无法超越那个确认窗口,我无法从中实现我想要的目标。

我可以编写任何常用的 javascript 或 jquery 函数来执行此操作吗?

【问题讨论】:

  • 最明显的方法是为文档添加一个双击处理程序,并为所有使用 preventdefault 的链接类选择器,但由于您根本不显示任何代码,很难确定。
  • 你可以试试这个吗?

标签: javascript jquery html jsf primefaces


【解决方案1】:

如果你想禁用所有<a>标签double click那么你可以使用这个功能。

$(document).ready(function(){
     $(document).on("a","dblclick",function(event){
             event.preventDefault();
             return false;
     });
});

或者如果你想禁用所有<a>标签double clickclick,那么你可以使用这个功能。

$(document).ready(function(){
     $(document).on("a","dblclick click",function(event){
             event.preventDefault();
             return false;
     });
});

【讨论】:

  • 使用 jQuery 委托事件而不是实时事件。 '$(document).on("a", "dblclick", function(e){e.preventDefault();})'。它适用于后来在其他地方创建的所有锚点!
【解决方案2】:
var links = document.getElementsByTagName('a');

for(var i = 0; i < links.length; i++)
{
    links[i].bind('dblclick',function(event){
    event.preventDefault();
   });

}

我认为这应该可行。

【讨论】:

  • 哎呀,我的意思是 document.getElementsByTagName("a")
猜你喜欢
  • 1970-01-01
  • 2010-12-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-03-14
  • 2018-04-13
相关资源
最近更新 更多