我试图添加一个onClick事件到锚标签…
以前我有…
< a href =“somlink.html”onClick =“pageTracker._link(this.href); return false;”>
但是我试图避免内联onClick事件,因为它干扰另一个脚本..
所以使用jQuery我正在尝试以下代码…
<script> $(document).ready(function() { $('a#tracked').attr('onClick').click(function() {window.onbeforeunload = null; pageTracker._link(this.href); return false; }); }); </script>
与html一样,< a id =“tracked”href =“something.html”>
所以我的问题应该是这样吗,如果不是最好的解决方案呢?
解决方法
正确的方式是(对于jQuery)
$('#tracked').click(function() { pageTracker._link($(this).attr('href')); return false; });
这将在具有跟踪ID的任何元素上添加“onclick”事件.在那里你可以做任何你想要的点击事件发生后,第一行会将clicked元素的href属性传递给pageTracker.
对于你的原始问题,它不会工作,它会引发未定义的错误. attr工作有点不同.参见documentation .你使用它的方式,将返回属性的值,我认为在这种情况下它不可链接.如果你想保持它的方式,它应该看起来像这样:
$('#tracked').click(function() { $(this).attr('onclick','pageTracker._link(this.href); return false;'); return false; });