跟踪点击链接不能作为超链接工作
Tracking onClick links not working as hyperlinks
<li><a href="konkurranseregler.html" onclick="javascript:kenshoo_conv('rules','0','','sem','NOK');return false;">KONKURRANSEREGLER</a></li>
<div class ="contactButton"> <a href="http://www.altavdrikke.no/#top" onclick="javascript:kenshoo_conv('kontakt','0','','sem','NOK');return false;"><span>Kontakta Oss</span></a></div>
这两个按钮不能用作链接,请参阅:http://www.undergroundblc.co.uk/chaqwa/即您单击但没有任何反应。如果您将"返回假"更改为"返回真",按钮将再次工作,但不再向跟踪公司注册。所以我的问题是我如何保持"返回错误"并让它们作为链接工作。
首先。如果你必须在你的html中嵌入javascript(不推荐(,你不需要在事件中有javascript:
声明(在你的例子中onclick
(。使用 dom 方法会更好 el.addEventListener('click', kenshoo_conv, false)
.
如果您需要在页面卸载之前触发一个函数,则需要对该函数进行一些控制,以了解它何时成功触发跟踪行为。
附加onclick
后,您可以使用 event 参数(传递给函数(来阻止事件触发,evt.preventDefault()
,执行您需要执行的所有操作,然后在跟踪器成功触发时设置location.href
。
所有代码可能看起来像这样(假设一切都已规范化,因此不在IE中(:
.HTML
<a href="konkurranseregler.html" data-args="rules,0,,sem,NOK"
class="kenshoo_conv_link">KONKURRANSEREGLER</a>
贾夫文
function kenshoo_conv(evt) {
var dest = this.href,
args = this.getAttribute('data-args').split(",");
evt.preventDefault();
//add success event to arguments
args.push(function () {
location.href = dest;
});
//fire the tracking function
trackMe.apply(this, args);
}
var kenshoo_conv_links = document.getElementsByClassName("kenshoo_conv_link");
for (var i = 0, il = kenshoo_conv_links.length; i < il; i += 1) {
kenshoo_conv_links[i].addEventListener('click', kenshoo_conv, false);
}
这将使 trackMe 函数中的最后一个参数成为回调,以将位置更改为链接的目标。因此,一旦跟踪器成功触发,您必须触发该功能。如果您不知道,可以在超时后执行此操作(不理想(
相关文章:
- 制作一个不带HTML a标记但在动画播放完毕后指向其他页面的超链接
- 单击超链接时,如何使用Google Maps API v3缩放地图
- 用超链接替换URLS
- 使用JavaScript从超链接加载时的默认下拉值
- Hammer.js阻止在Android Webview中点击超链接
- 将超链接添加到“;标题“;标记文本
- 文本建议的超链接
- 超链接;编译angular指令内的模板后无法工作
- 如何使超链接像按钮一样工作
- 跟踪点击链接不能作为超链接工作
- JQuery中的超链接,只在JSFiddle中工作
- Xlxs.js的“l"单元格超链接对象选项工作
- iUI Ajax超链接不工作在Chrome
- 超链接不工作在安卓UC浏览器
- Jquery/JS和CSS水平列表导航单击下拉超链接不工作
- 在MAC firefox浏览器中,超链接无法工作
- 如何使超链接工作在Chrome打包应用程序
- 如何使用office-js以编程方式向工作表中的单元格添加超链接
- asp超链接不能在jquery中工作
- 超链接标记“<a>"无法在html页面中工作