在不停止实际页面重定向的情况下抑制onclick链接事件

时间:2019-03-20 13:59:49

标签: javascript

是否可以禁用onclick功能,但仍使用href将用户重定向到所请求的链接。例如标题菜单,其中有许多链接如下所示:

<a href="//www.site.com/blah" onclick="DA_A('id',':per:shop:phones',this.href);  return false;" class="link" target="_self" title="">Phones</a>

我无法删除“ DA_A('id',':per:shop',this.href);返回false;”从HTML页面。但是,使用标签管理器如何注入一小段JavaScript代码功能,该功能将停用/静音“ DA_A”功能,但仍使链接正常工作?可能吗?似乎函数“ DA_A”是调用另一个“ .push”函数并传递一些数据的函数。

我有什么选择?因为我无法编辑有问题的菜单?

2 个答案:

答案 0 :(得分:2)

如果可以在DOM渲染后运行一些JavaScript,则可以从元素中删除onclick

var anchor = document.getElementById("someId"); // or tagname, querySelector, etc
anchor.onclick = "";

您还可以完全禁用它调用的功能,具体取决于是否在其他地方需要它:

window.DA_A = function() { /* do nothing */ };

第一个代码段需要在呈现DOM之后运行(例如,如果您使用的是jQuery,则将其括在$(function() {})中),第二个代码段则需要在{{1之后}}函数首先定义。

其中任何一个都应禁用onclick,但仍允许锚导航。

答案 1 :(得分:0)

此代码段将达到目的:

window.onload = function() 
{
    document.querySelctor("a").removeAttribute("onclick");  // make selector more specific
};