13-解决方案
12.3.2 解决方案
jQuery的设计使得编写插件非常简单直接。你可以编写方法或者函数扩展现有的jQuery对象。在包含jQuery代码库之后声明如下JavaScript,代码就可以使用新的自定义方法和函数。
1.编写自定义jQuery方法
jQuery方法可以链接,因此可以利用jQuery选择器。jQuery方法通过用方法名称扩展 jQuery.fn 对象定义。因为jQuery对象必须能处理多种结果,你必须将自定义功能包装在对 each() 函数的调用中,以便将代码应用到所有结果:
jQuery.fn.goShop = function() {
return this.each(function() {
jQuery('body').append('<div>Purchase: ' + this.innerHTML + '</div>');
});
};
访问这个新的插件和正常的jQuery调用一样简单,只需要利用新的方法名称:
jQuery('p').goShop();
2.编写自定义jQuery函数
把函数附加到jQuery主对象中,设计为从jQuery选择之外调用:
jQuery.checkout = function() {
jQuery('body').append('<h1>Checkout Successful</h1>');
};
这个新函数可以正常地操纵和调用:
jQuery.checkout();