JQuery正在使用$作为函数,我想知道,我怎样才能创建自己的函数呢?
如何在JavaScript中创建承包商功能? 就像,我这样做:
window.test = (function () {
var test = {
get: function (selector) {
}
};
return test;
}());
(例如)我想直接调用test()
答案 0 :(得分:4)
我认为你需要这个链接对象。
var myQuery = function (str) {
this.str=str;
this.concate = function(str){
this.str= this.str+" "+str;
return this;
};
this.to_string = function(){
return this.str;
};
return this;
};
window['$']=myQuery;
alert($('hello').concate(' $').concate('!!').to_string());
alert(myQuery('hello').concate('myQuery').concate('!!').to_string());
另一个场景:将myQuery的引用直接声明为$;
var myQuery = (function (str) {
if(typeof window['$'] ==="undefined")
{
window['$']=this;
}
this.str=str || '';
this.concate = function(str){
this.str= this.str+" "+str;
return this;
};
this.to_string = function(){
return this.str;
};
return this;
})();
alert($.concate("From $").to_string());
答案 1 :(得分:2)
above answer是正确的,但我想我明白你需要什么,也许这个答案也可以帮助你:
window["$"] = function (selector) {
this.s=selector;
this.changeColor = function(color){
document.getElementById(this.s).style.background = color;
return this;
};
return this;
};

<div id="elementId">
Change my background.
</div>
<a onClick="$('elementId').changeColor('red');" href="#">Red</a>
<a onClick="$('elementId').changeColor('blue');" href="#">Blue</a>
<a onClick="$('elementId').changeColor('green');" href="#">Green</a>
&#13;