1、jquery 与不同类的 冲突 问题:
$.noConflict();
jquery中 定义了一个noConflict()方法,当使用这个方法后,$符号 就不能在jquery中 使用了,
jquery.noConflict(); $("div").css("color","red"); //报错
可以用:
//方法一: var $j = jQuery.noConflict(); $j(".ccc").css("color","red"); //方法二: jQuery.noConflict(); jQuery(function($){ $("p").click(function(){ }); }); //方法三: jQuery.noConflict(); (function($){ $("p").click(function(){ }); })(jQuery);
2、浏览器内核:
$.browser : if($.browser.msie){ } //如果是IE if($.browser.safari){ } //如果是safari
3、$.extend()
扩展: 可以把对象进行合并,$.extend()在写插件的时候 非常有用(在参数设置的时候):
var p1 = {name:"张三",age:22,address:"上海"}; var p2 = {name:"女士",age:45}; var p = $.extend(p1,p2); //第二个参数覆盖第一个参数,没有的就不覆盖,第二个参数 不会有变化,返回覆盖后的参数 alert(p1.name+"--"+p1.age); //p1中的name 和 age 被 p2中的值 覆盖 女士--45 alert(p.name+"--"+p.age); //女士--45 var po = new Object(); var pp = $.extend(po,p1,p2); //p2覆盖p1,并且存储在po中,p1不变,返回po alert(p1.name+"--"+p1.age); //p1中的name 和 age 不变 alert(pp.name+"--"+pp.age); alert(po.name+"--"+po.age);