jQuery Uncaught TypeError $不是一个函数(仅适用于几页)

bob*_*ley 2 jquery joomla

我是jQuery的新手,我试图在我的Joomla模板中包含一个toggle-nav脚本.我包含了最新版本的jQuery和我的.js文件,其中存储了函数.该脚本适用于几个页面(例如家庭,商店),但它不适用于我显示文章页面的页面.

我尝试用简单的警报替换脚本.警报显示在所有页面上,因此脚本已正确包含在内.也许jQuery没有正确包含,但为什么它应该在家里或商店工作..

我只找到了关于这个问题的答案,其中脚本不起作用,但在我的情况下,它适用于我的网站的几页.

这是我的功能:

$(document).ready(function() {

    $('.toggle-nav').click(function() {
      $('.navigation').toggleClass('show');
    });
});
Run Code Online (Sandbox Code Playgroud)

非常感谢你!

ili*_*ias 5

您的脚本可能与mootools冲突,这种情况很常见,具体取决于您的joomla版本和脚本设置.请尝试以下方法:

// You might need this, usually it's autoloaded   
jQuery.noConflict();

// Replace $ with jQuery
jQuery(document).ready(function() {
    jQuery('.toggle-nav').click(function() {
      jQuery('.navigation').toggleClass('show');
    });
});
Run Code Online (Sandbox Code Playgroud)

  • 或者更好地将`$`保留在处理程序中:`jQuery(document).ready(function($){...});` (4认同)