Firefox 扩展中的 jQuery.hoverIntent.js 无法加载

标签 jquery firefox-addon hoverintent

根据this指导 我尝试将 JQuery 加载到我的 Firefox 扩展程序。

var Myext = {

  loadJQuery: function(wnd) {
      var loader = Components.classes["@mozilla.org/moz/jssubscript-loader;1"]
        .getService(Components.interfaces.mozIJSSubScriptLoader);
      loader.loadSubScript("chrome://myext/content/jquery-1.7.2.min.js", wnd);
      var jQuery = wnd.jQuery.noConflict(true);
      try {
        loader.loadSubScript("chrome://myext/content/jquery.hoverIntent.js", jQuery);
      catch (Except) {
        alert(Except.toString());
      }
      return jQuery;
  },

  onLoad: function(e) {
    Myext.jQuery = Myext.loadJQuery(window);
  },

  showDialog: function(e) {
    var $ = Myext.jQuery;
    /* JQuery code */
  }

}

window.addEventListener("load", function(e) { Myext.onLoad(e); }, false);
window.addEventListener("DOMContentLoaded", function(e) { Myext.showDialog(e); }, false);

加载器加载jquery.hoverIntent.js时出现问题。我下载了here

错误消息:“类型错误:$未定义”

最佳答案

为了使用.dialog(),您需要包含jQuery UI图书馆也。加载 jQuery 库后立即放置下一行:

loader.loadSubScript("chrome://myext/content/jquery-ui-1.8.18.custom.min.js", wnd);

您可以从 here 下载最后一个 jQuery UI 库。 .

关于Firefox 扩展中的 jQuery.hoverIntent.js 无法加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9942818/

相关文章:

javascript - 如何使用 Materialise 触发选择更改

javascript - 让 Pagemod 和 Page-worker 模块一起工作?

javascript - 我可以在这个例子中立即调用我的函数而不是用匿名函数包装它吗?

css - hoverIntent 使用悬停元素的 id 来改变类

javascript - 实现悬停意图

jQuery UI 对话框关闭并没有清除对话框

jquery - 验证AntiForgeryToken错误

javascript - 在 Firefox 插件中显示目录浏览对话框

javascript - 更新页面 HTML 导致死循环

jquery - window.open 和 $(document).ready