JS没有拿起点击事件

时间:2017-03-16 09:44:18

标签: javascript jquery wordpress

我的目标是在用户点击“注册”链接或按钮时生成Google Analytics事件。我有以下代码:

<script>
JQuery(document).ready(function() {
  $( ".menu-item" ).click(function() {
    ga('send', 'event', 'link', 'click', 'Sign Up link');
  });
  $( ".et_pb_more_button" ).click(function() {
    ga('send', 'event', 'button', 'click', 'Sign Up button');
  });
});
</script>

我在使用JQuery(document).ready(function(时已经尝试过它,用ga()替换alert()函数,但问题似乎是该网站(基于WordPress)没有认识到JQuery。

有关我如何才能使这项工作的任何建议,请?

4 个答案:

答案 0 :(得分:1)

试试这个,

<input type='button' onClick="ga('send', 'event', 'link', 'click', 'Sign Up link');" 
value="Sign Up">

这是调用你的ga代码的纯粹方式,如果有的话。

我希望这会有所帮助。

答案 1 :(得分:1)

用$(document)替换JQuery(文档)这将起作用

在包含jquery

之后立即放置此代码
$(document).ready(function() {
  $( ".menu-item" ).click(function() {
    ga('send', 'event', 'link', 'click', 'Sign Up link');
  });
  $( ".et_pb_more_button" ).click(function() {
    ga('send', 'event', 'button', 'click', 'Sign Up button');
  });
});

答案 2 :(得分:1)

更新了答案

按下这个词,你需要包括jquery。

在排队脚本之前添加wp_enqueue_script('jquery');

wp_enqueue_script( string $handle, string $src = '', 
array $deps = array(), string|bool|null $ver = false, bool $in_footer = false )

有关详细信息,请参阅wordpress developer网站

旧答案

如果脚本正在页脚中加载,我们可以将代码包装在一个匿名函数中,我们传入jQuery以映射到$。

(function($) {
     $( ".menu-item" ).click(function() {
       ga('send', 'event', 'link', 'click', 'Sign Up link');
     });
    $( ".et_pb_more_button" ).click(function() {
      ga('send', 'event', 'button', 'click', 'Sign Up button');
    });

})( jQuery );

如果您绝对需要在标题中加载脚本,那么您可能还需要使用文档就绪函数,因此您只需传入$。

jQuery(document).ready(function( $ ) {

   // $ Works! You can test it with next line if you like

});

答案 3 :(得分:0)

尝试使用triggerHandler强制点击事件:

$( ".menu-item" ).click(function() {
       ga('send', 'event', 'link', 'click', 'Sign Up link');
}).triggerHandler('click');