(function($){/**1.$.fn是指jquery的命名空间,加上fn上的方法及属性,会对jquery实例每一个有效。如扩展$.fn.abc(),即$.fn.abc()是对jquery扩展了一个abc方法,那么后面你的每一个jquery实例都可以引用这个方法了. 那么你可以这样子:$("#div").abc(); 2.  jQuery为开发插件提拱了两个方法,分别是: jQuery.extend(object);为扩展jQuery类本身.为类添加新的方法。→ 可以理解为【静态方法 】jQuery.fn.extend(object);给jQuery对象添加方法jQuery.fn.extend(object);对jQuery.prototype进得扩展,就是为jQuery类添加“成员函数”。jQuery类的实例可以使用这个“成员函数”。//jQuery源码中。。。jQuery.fn = jQuery.prototype ={ init: function( selector, context ){//....  //...... }; 3.$.fn.function用于添加单个方法$.fn.extend 用于添加多个方法参考:http://www.cnblogs.com/wyjgreat/archive/2011/07/19/2110754.html*///1.$.fn.abc = function() {alert("测试$.fn.,可以参考select下拉框总结那篇文章!");}//2.为 jQuery 添加一个为add 的 “静态方法”,之后便可以在引入 jQuery 的地方,使用这个方法了,$.extend({add:function(a,b) {return a + b;},sub:function(a,b) {return a - b;}});//2.1$.fn.extend({getVal:function() {return $(this).val();}});//3....$.hcCookie = {g: function(name) {var arr = document.cookie.match(new RegExp("(^| )" + name + "=([^;]*)(;|$)"));if (arr != null) return unescape(arr[2]); return null;},d: function(name) {var exp = new Date();exp.setTime(exp.getTime() - 1);var cval = getCookie(name);if (cval != null) document.cookie = name + "=" + cval + ";expires=" + exp.toGMTString() + ";path=/";},s: function(name, value,t) {var days = 30;var exp = new Date();if(t){exp.setTime(exp.getTime()+t* 60 * 60 * 1000);}else{exp.setTime(exp.getTime() + days * 24 * 60 * 60 * 1000);}document.cookie = name + "=" + escape(value) + ";expires=" + exp.toGMTString() + ";path=/";}};})(jQuery);/**写在(function($){})(jQuery);外面【下面的代码可以单独放在一个JS中,base.js】*/
var kzCookie={g: function(name) {var arr = document.cookie.match(new RegExp("(^| )" + name + "=([^;]*)(;|$)"));if (arr != null) return unescape(arr[2]); return null;},d: function(name) {var exp = new Date();exp.setTime(exp.getTime() - 1);var cval = this.g(name);if (cval != null) document.cookie = name + "=" + cval + ";expires=" + exp.toGMTString() + ";path=/";},s: function(name, value,t) {var days = 30;var exp = new Date();if(t){exp.setTime(exp.getTime()+t* 60 * 60 * 1000);}else{exp.setTime(exp.getTime() + days * 24 * 60 * 60 * 1000);}document.cookie = name + "=" + escape(value) + ";expires=" + exp.toGMTString() + ";path=/";}
};//去右空格
String.prototype.rTrim=function(str){         var   re_r=new RegExp("([.\\w]*)"+(str&&("(\\"+str+")")||"[ ]")+"+$") ;return   this.replace(re_r, "$1") ;
};
//去左空格
String.prototype.lTrim=function(str){         var   re_l=new RegExp("^"+(str&&("(\\"+str+")")||"[ ]")+"+(.*)") ;return   this.replace(re_l, "$2") ;
};
//去左右空格
String.prototype.trim=function(str){           return   this.lTrim(str).rTrim(str) ;
};

测试代码:

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>Document</title>
</head>
<body><div>test</div><input type="text" value="hanchao"><!-- JS --><script type="text/javascript" src="http://apps.bdimg.com/libs/jquery/2.1.1/jquery.min.js"></script><script type="text/javascript" src="demo.js"></script><script type="text/javascript">(function(){//alert(1);// $("div").abc();// var result = $.add(3,4);// alert(result);//var result = $.sub(5,4);//alert(result);// var result = $("input").getVal();// alert(result);
/*kzCookie.s("hanchao","testcookienew",24);kzCookie.s("hanchao1","testcookienew1",24);kzCookie.d("hanchao");//kzCookie.d("hanchao1");var cookieValue = kzCookie.g("hanchao");var cookieValue1 = kzCookie.g("hanchao1");alert(cookieValue);alert(cookieValue1);*/$.hcCookie.s("hanchao","testcookienew",24);var cookieValue = kzCookie.g("hanchao");alert(cookieValue);})();</script>
</body>
</html>

转载于:https://blog.51cto.com/hanchaohan/1529686

最新文章

  1. MFC接收命令行参数的三种方法
  2. 19 个 JavaScript 常用的简写技术
  3. android 判断进程是否处于前台
  4. 江湖急诏令:腾讯数据库王者挑战赛赏金万两募英豪!
  5. Win32ASM学习[23]:RadASM快捷键
  6. GDI+ 学习记录(31) 图像颜色变换(TGPImageAttributes)
  7. 拆机芯片DIY一个STM32F401CCU6核心板
  8. 古风排版 分数 20作者 陈越单位 浙江大学
  9. 软件测试用例执行日报,软件测试之测试用例执行.docx
  10. Canceling statement due to conflict with reco
  11. CSS3之position:sticky使用
  12. python 批量修改图片的名字
  13. 为金融而生的区块链Injective(INJ)
  14. 这4款神级软件 最好用的软件
  15. 锂电池剩余寿命预测(简单介绍)
  16. 元素的alt和title有什么异同?
  17. 无人驾驶背后的技术_-_PostGIS点云(pointcloud)应用
  18. 对Habit Browser浏览器网页翻译问题的凑合解决方法
  19. 轻薄本计算机专业够用吗,我女朋友都秒懂了 买轻薄本看这一篇就够了
  20. 一种简单的封装VP8/VP9视频的容器:IVF格式

热门文章

  1. windows或Ubuntu中请求github.com请求超时,或在下载GitHub文件出现:<urlopen error [Errno 110] Connection timed out>
  2. lambda表达式可以用来声明_Lambda 的骚操作,你都get到了没
  3. sort,uniq,fmt,wc,提取开头和结尾的命令的使用
  4. 网络编程学习笔记(gethostbyaddr函数)
  5. 数值格式化,每隔三位加一个逗号
  6. Codeforces Round #155 (Div. 2)
  7. 关于JS中的constructor与prototype
  8. 关于android:id=@+id/xx的理解
  9. Golang 随机获取本机可用端口
  10. leetcode算法题--0~n-1中缺失的数字