2017-02-11 108 views
0

我知道标题可能有点关闭或没有意义可言,但我一直含义做出一个jQuery插件。一个链接功能,但我知道如何使它使得它初始化通知类或一个新的对象,例如正常的方式,PNotify插件,这是它是如何初始化如何创建一个jQuery插件类

new PNotify({ 
    title: 'Regular Notice', 
    text: 'Check me out! I\'m a notice.' 
}); 

所以我想让我的插件初始化,我该怎么做。由于

回答

1

看看this link这是一个js基础插件结构

(function() { 
    'use strict'; 
    window.GENSPlugin = function() { 

     // Global element references, to reference piece of plugin anywhere 
     this.someElement = null; 

     // Default Options 
     var defaults = { 
      firstOption: true, 
      secondOption: 1 
     } 
     // Create options by extending defaults with the passed in arguments 
     if (arguments[0] && typeof arguments[0] === "object") { 
      this.options = extendDefaults(defaults, arguments[0]); 
     } 
     this.init(); 
    } 
    // Public Method 
    GENSPlugin.prototype.init = function() { 
    } 
    // Private Methods 
    function somePrivateMethod() { 
    } 
    // Extend default Options 
    function extendDefaults(defaults, properties) { 
     var property; 
     for (property in properties) { 
      if (properties.hasOwnProperty(property)) { 
       defaults[property] = properties[property]; 
      } 
     } 
     return defaults; 
    } 
}()); 
var GENSplugin = new GENSPlugin({ 
    firstOption: false, 
    secondOption: 5 
}); 
+0

谢谢,刚才看到它,并真正帮助 – lulliezy

+0

但有一个问题,其中原型的'GENSPlugin.prototype.init'从,因为我希望实现与它相关的功能也来了,还有一个init在,所以我假定的init是一个函数,可以被称为偏偏字的原型,就像它是一个关键字或只是au ser定义的单词? – lulliezy

+1

@lulliezy请看看这个[链接](http://www.w3schools.com/js/js_object_prototypes.asp),但你仍然有问题,我在这里解决 – Shayan

1

JS功能,可通过默认对象构造。例如:

function PNotify (params) { 
    this.title = params.title; 
    this.text = params.text; 

    // Do something jquery related here 
} 

你可以称之为简单称其为:

var pnotify = new PNotify({ title: "hello", text: "world" }) 

你可以了解更多有关它here