如何创建一个jQuery插件类
问题描述:
我知道标题可能有点关闭或没有意义可言,但我一直含义做出一个jQuery插件。一个链接功能,但我知道如何使它使得它初始化通知类或一个新的对象,例如正常的方式,PNotify插件,这是它是如何初始化如何创建一个jQuery插件类
new PNotify({
title: 'Regular Notice',
text: 'Check me out! I\'m a notice.'
});
所以我想让我的插件初始化,我该怎么做。由于
答
看看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
});
答
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
谢谢,刚才看到它,并真正帮助 – lulliezy
但有一个问题,其中原型的'GENSPlugin.prototype.init'从,因为我希望实现与它相关的功能也来了,还有一个init在,所以我假定的init是一个函数,可以被称为偏偏字的原型,就像它是一个关键字或只是au ser定义的单词? – lulliezy
@lulliezy请看看这个[链接](http://www.w3schools.com/js/js_object_prototypes.asp),但你仍然有问题,我在这里解决 – Shayan