扫码关注官方订阅号
jq的$有$('选择器')与$.xxx这样的写法,我现在只实现了$()链式调用,但是$.ajax这种如果实现?
看来我写得长大家理解都有问题,这次短点.
1)$是jQuery对象的简写标识符2) $(),调用了jQuery的构造函数3)$.ajax调用了jQuery对象的一个函数
例如简单的示例
var mQuery=(function(){ function OBJ(selector){ if(!(this instanceof OBJ)){ return new OBJ(selector); } this.selector= selector; } OBJ.prototype.play=function(){ console.log('play on '+this. selector); return this; }; OBJ.myFunc=function(){ console.log("myFunc"); }; return OBJ; }()); (function($){ $('myselector').play(); $.myFunc(); }(mQuery));
直接用不就可以了吗?移动端就用zeptojs
这样重新封装一次有什么意义呢?jQuery的使用已经非常简单了,如果看jQuery源码都有困难的话,不如直接使用来的方便。
很简单的,首先,jquery的入口函数是不用new操作的,函数名是jquery,一样一来就可以在这个jquery增加继承属于方法了,值得注意的,入口函数不能new操作才行,如果new操作后这些继承就没有用了。手机打字很累,需要例子我再复制给你
ajax说到底是一个xmlhttprequest对象在起作用,不过不同浏览器兼容性不好,个人认为自己封装的话,如果做不到像jq那样兼容各大浏览器,那还是使用$.ajax()吧。。。而你说到这个$.ajax。。。实际上相当于一个这样的构造函数:
function $(select){ return new JQ(select); } function JQ(){ .... } JQ.prototype={ .... ajax:function(....){ .... }, .... }
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
1)$是jQuery对象的简写标识符
2) $(),调用了jQuery的构造函数
3)$.ajax调用了jQuery对象的一个函数
例如简单的示例
直接用不就可以了吗?移动端就用zeptojs
这样重新封装一次有什么意义呢?jQuery的使用已经非常简单了,如果看jQuery源码都有困难的话,不如直接使用来的方便。
很简单的,首先,jquery的入口函数是不用new操作的,函数名是jquery,一样一来就可以在这个jquery增加继承属于方法了,值得注意的,入口函数不能new操作才行,如果new操作后这些继承就没有用了。
手机打字很累,需要例子我再复制给你
ajax说到底是一个xmlhttprequest对象在起作用,不过不同浏览器兼容性不好,个人认为自己封装的话,如果做不到像jq那样兼容各大浏览器,那还是使用$.ajax()吧。。。
而你说到这个$.ajax。。。实际上相当于一个这样的构造函数: