WordPress与OOP jQuery Slider插件冲突

时间:2014-02-05 09:59:59

标签: jquery jquery-plugins wordpress-plugin wordpress

我制作了一个滑块插件,我正在尝试将其移植到WordPress。但是,当“$”选择器出现时,代码不会运行。

这是我的插件的基本结构,所以你将理解我在其上构建的OOP基础。我已经尝试过警报来查看错误的位置。它似乎就在第一个$符号出现后。

function slider(target, options) {
    /* Settings
     =============================== */
    var settings = $.extend({
        animation: "myanimation"            
    }, options);
    alert('qq');

    /* Variables
     =============================== */
    var self = this;


    /* Initialization
     =============================== */
    self.init = function() {}
}

运行插件:

jQuery(function($){
   var myslider = new slider();
   myslider.init();
})

你能帮我解决一下如何修复它吗?非常感谢你!

2 个答案:

答案 0 :(得分:0)

许多JavaScript库使用$作为函数或变量名,就像jQuery一样。在jQuery的情况下,$只是jQuery的别名,因此所有功能都可以在不使用$的情况下使用。如果你需要在jQuery旁边使用另一个JavaScript库,那么通过调用$ .noConflict()将$的控制权返回给另一个库。

jQuery.noConflict

答案 1 :(得分:0)

尝试使用IIFE,并将jQuery作为参数传递:

(function($){
  function slider(target, options) {
    /* Settings */
    var settings = $.extend({
      animation: "myanimation"
    }, options);
    alert('qq');

    /* Variables */
    var self = this;


    /* Initialization */
    self.init = function() {}
  }
})(jQuery);