Javascript错误,未捕获TypeError属性'$'的对象[object Object]不是函数

man*_*sim 7 javascript jquery joomla types

我正在尝试在Joomla模块中插入脚本.该脚本是JS中的百分比加载器.我和另一个js有一些问题,但我终于设法解决了这些问题.

我得到的错误是:

未捕获的TypeError:对象[对象对象]的属性'$'不是函数(匿名函数)

我正在尝试导入Percentage Loader jQuery插件

而js代码是:

$(function() {
  var $topLoader = $("#dttopLoader").percentageLoader({width: 256, height: 256, controllable : true, progress : 0.5, onProgressUpdate : function(val) {
      $topLoader.setValue(Math.round(val * 100.0));
    }});

  var topLoaderRunning = false;
  $("#dtanimateButton").click(function() {
    if (topLoaderRunning) {
      return;
    }
    topLoaderRunning = true;
    $topLoader.setProgress(0);
    $topLoader.setValue('0kb');
    var kb = 0;
    var totalKb = 999;

    var animateFunc = function() {
      kb += 17;
      $topLoader.setProgress(kb / totalKb);
      $topLoader.setValue(kb.toString() + 'kb');

      if (kb < totalKb) {
        setTimeout(animateFunc, 25);
      } else {
        topLoaderRunning = false;
      }
    }

    setTimeout(animateFunc, 25);

  });
});      
Run Code Online (Sandbox Code Playgroud)

我尝试将第一行从"$(function()..."更改为"jquery(function()..."),因为我在stackoverflow上阅读了很多主题,但仍然无法修复它.

Nop*_*ope 4

在这篇SO帖子中似乎也有类似的问题,但在WordPress中。

你说你正在使用 Joomla。Joomla 可能还包括加载“无冲突”模式的 jQuery 库,也许可以应用相同的解决方案。

尝试替换这个:

$(function() {
Run Code Online (Sandbox Code Playgroud)

有了这个:

jQuery(document).ready(function ($) {
Run Code Online (Sandbox Code Playgroud)