jQuery New Class
在jQuery中定義新的類有兩種方法:使用$.fn.extend和$.widget
使用$.fn.extend方法
$.fn.extend方法可以為jQuery對象添加新的方法,也可以通過調用這些方法創建新的jQuery對象。
示例代碼:
$.fn.myMethod = function() { console.log("This is my method"); return this; } $("p").myMethod();
上面的代碼定義了一個名為myMethod的方法,并將其添加到$("p")的原型對象中。可以通過調用$("p").myMethod()來使用該方法。
使用$.widget方法
$.widget方法允許我們創建復雜的、可重用的jQuery插件。
示例代碼:
$.widget("myNamespace.myWidget", { options: { myOption: "default value" }, _create: function() { console.log("Widget created"); }, myMethod: function() { console.log("This is my method with option value: " + this.options.myOption); } }); $("#myDiv").myNamespace_myWidget({ myOption: "custom value" }); $("#myDiv").myNamespace_myWidget("myMethod");
上面的代碼創建了一個名為myNamespace.myWidget的插件,定義了默認選項、創建方法和自定義方法myMethod。可以通過調用$("#myDiv").myNamespace_myWidget({myOption: "custom value"})來實例化該插件,然后調用$("#myDiv").myNamespace_myWidget("myMethod")來使用myMethod方法。