Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/371.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript JS未拾取单击事件_Javascript_Jquery_Wordpress - Fatal编程技术网

Javascript JS未拾取单击事件

Javascript JS未拾取单击事件,javascript,jquery,wordpress,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() {

我的目标是在用户单击注册链接或按钮时生成一个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>
我尝试过使用JQuerydocument.readyfunction和不使用JQuerydocument.readyfunction,用一个简单的警报取代了ga函数,但问题似乎是基于WordPress的网站无法识别JQuery

请给我一些建议,我可以怎样做呢?

试着这样做

<input type='button' onClick="ga('send', 'event', 'link', 'click', 'Sign Up link');" 
value="Sign Up">
如果有,这是调用ga代码的纯方法


我希望这会有所帮助。

用$document替换JQuerydocument这会有用的

将此代码放在include 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');
  });
});
最新答案


在wordpress中,您需要包含jquery

添加wp_enqueue_脚本'jquery';在将脚本排队之前

wp_enqueue_script( string $handle, string $src = '', 
array $deps = array(), string|bool|null $ver = false, bool $in_footer = false )
有关详细信息,请参阅网站

旧答案

如果脚本加载到页脚中,我们可以将代码包装在匿名函数中,在该函数中传入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

});

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

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

控制台中有错误吗?页面加载时DOM中的.menu项和.et_pb_more_按钮元素是在页面加载时添加的,还是以后动态添加的?您必须使用JQuery或$not两者…这不应该是JQuery而不是JQuery吗?如果没有JQuery/JQuery,则会出现一个错误,表明$not a recogned function。在jQuery中,它只给出了这个错误,我认为这与此无关:promise DomeException中的Uncaught:播放请求被暂停调用中断。我尝试了“jQuery”和“jQuery”,但这两个选项都不起作用。在页面的其他地方,开发人员使用了“JQuery”,所以我使用了它。这有区别吗?不幸的是,这不是网站使用的特定主题的选项。此外,这里的许多成员都反对这样的onclick实现,但无论如何,你可以在wordpress主题@Swapper中包含这样的jquery插件,是的,你是对的,他可以使用jquery pulgin,也可以使用HTML onclick属性绑定。@Farhad试试这个one@FarhadD注释在onclick事件内调用的ga方法。只需输入警告“一些文本”,然后检查,可能在ga端有一个错误。还要确保有一个包含该元素的菜单项类。仍然没有运气。就好像它就是不认识这个功能。元素确实存在。您是否用$替换了JQuery?并在控制台中检查错误日志。最后。。把这个放在你的脚本加载之前,这也不起作用。JQuery版本可能有问题吗?是$。菜单项。单击函数{alert1;};工作,请检查?我们正在检查jQuery是否正常工作。它的word press,您需要包括jQuery。添加wp_enqueue_脚本'jquery';在您将脚本排队之前,请在回答中添加有关此问题的更多详细信息,有一种方法可以在word press上使用jquery,请参考wp_enqueue_脚本“jquery”;什么也没做: