====jQuery插件编写原则=====
1.命名 jQuery.<插件名>.js
2.插件内部,this指向的是当前选择器取得的JQuery对象,不是内部对象, 例如click(), 内部的this指向的是DOM元素
3.this.each可以遍历所有元素
4.插件头部加分号,防止压缩的时候出问题
5.采用闭包写法
;(function($){ //$是jQuery对象
/代码块/
})(jQuery);
=====jQuery.fn.extend()和jQuery.extend()区别=======
jQuery.fn.extend() 封装对象方法,例子如下
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>extend : color</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<style>
.a{
color : red;
}
</style>
<script type="text/javascript" src="../../scripts/jquery.js"></script>
<script type="text/javascript">
//插件编写
;(function($) {
jQuery.fn.extend({
"color":function(value){
return this.css("color",value);
}
});
})(jQuery);
//插件应用
$(function(){
//查看第一个div的color样式值
alert($("div").color()+"\n返回字符串,证明此插件可用。");
//把所有的div的字体颜色都设为红色
alert( $("div").color("red")+"\n返回object证明得到的是jQuery对象。");
})
</script>
</head>
<body>
<div class="a">red</div>
<div style="color:blue">blue</div>
<div style="color:green">green</div>
<div style="color:yellow">yellow</div>
</body>
</html>
jQuery.extend()
扩展JQuery对象,封装全局函数,或者选择器插件,常用于设计插件的一系列默认参数,例子如下
var setting = {a:1,b:2,c:3}
var option = {a:9,b:8}
var newJSON = jQuery.extend(setting,option);
结果是newJSON = {a:9,b:8,c:3}
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。