4

我试图在点击时延迟传出链接,以便谷歌事件跟踪有时间发生。

我编写了以下代码,但不确定如何将变量传递给 window.location。它只是将其添加为字符串“url”而不是链接地址。我究竟做错了什么?

$("a.private-product-order-button").click(function(e) {
   e.preventDefault();
   _gaq.push(['_trackEvent', 'Order buttons', 'Click', 'Service']);
   var url = $(this).attr("href");
   setTimeout(function() {
      $(window.location).attr('href', 'url');
      }, 200);
});
4

3 回答 3

2

无需使用 jQuery 设置location对象的属性(也无需使用 jQuery 获取href锚对象的属性):

$("a.private-product-order-button").click(function(e) {
    e.preventDefault();
    _gaq.push(['_trackEvent', 'Order buttons', 'Click', 'Service']);

    var url = this.href;
    setTimeout(function() {
        window.location.href = url;
    }, 200);
});
于 2013-02-13T09:38:36.113 回答
1

因为你毕竟是在添加字符串。

它应该是:

$(window.location).attr('href', url);

不是

$(window.location).attr('href', 'url');
于 2013-02-13T09:37:09.737 回答
1

使用$(window.location).attr('href', url);不带引号的 url。

于 2013-02-13T09:38:40.337 回答