--------杂谈--------

随着使用的使用js和jq使用的越来越娴熟,也就是说日常产品经理给的一些需求,已经在自己的能力范围内了。空出来了一点时间,来研究如何优化你的代码,

不管是性能上,还是美观上,都应该有一个更好的提升。你决定做这件事的时候,就应该用最大的努力,去做到最好,给自己最好的答案。要是每天浑浑噩噩

的混日子,老来想必会后悔吧。特别是在工作中,一定要做好,做好了就有人看到,自然利益什么的就会向你靠。或者不单单是金钱,还有爱情呢。所以一定

要做最好的自己。做最好的自己。

-------技术段--------

下面写的都是我自己在开发中的一些理解,当然想法也是在参考别人的思想后自己总结的一套,忘君喜欢。

$.extend这个是JQ提供的添加静态内容的方法,在开始开发的时候你会掂量着这个功能如何实现,是的,你在掂量的时候就应该把一整个页面的功能一个一个

的细分成一个个方法,这个方法实现这个小功能,那个方法实现那个小功能。思路会清晰很多。

$.fn.extend是添加动态内容的一个方法,像什么click,hover等一些事件就可以封装在其中。

代码示例:

             (function() {
//添加一个静态方法
$.extend({
add: function(a, b) {
return a + b;
}
});
//添加动态方法
$.fn.extend({
alertWhileClick: function() {
$(this).hover(function() {
console.log($(this).val());
})
}
});
$("#input1").alertWhileClick();
console.log($.add(3, 4))
})(jQuery)

注意此代码是有顺序的,先引入JQ,封装的方法在前面,而最后才是调用的方法,不然事件是不会其效果的。

全部代码:

 <!DOCTYPE html>
<html> <head>
<meta charset="UTF-8">
<script src="http://code.jquery.com/jquery-1.4.1.min.js"></script>
<title></title>
</head> <body>
<input type="text" name="input1" id="input1" value="wushuhongshigehuaidan" />
<script type="text/javascript">
(function() {
//添加一个静态方法
$.extend({
add: function(a, b) {
return a + b;
}
});
//添加动态方法
$.fn.extend({
alertWhileClick: function() {
$(this).hover(function() {
console.log($(this).val());
})
}
});
$("#input1").alertWhileClick();
console.log($.add(3, 4))
})(jQuery)
</script>
</body> </html>

jq_$.extend和$.fn.extend插件开发和方法的封装的更多相关文章

  1. jQuery插件开发中$.extend和$.fn.extend辨析

    jQuery插件开发分为两种:   1 类级别 类级别你可以理解为拓展jquery类,最明显的例子是$.ajax(...),相当于静态方法. 开发扩展其方法时使用$.extend方法,即jQuery. ...

  2. $.extend(),与$.fn.extend() 讲解

    $.extend(),与$.fn.extend() 讲解(一) (2013-07-11 10:24:31) 转载▼ 转自:http://blog.sina.com.cn/s/blog_a3bd3bd0 ...

  3. 插件的理解$.extend()与$.fn.extend()

    插件的理解.$.extend()与$.fn.extend()    插件开发包括两种:1.类级别的插件开发,即$.extend()扩展jquery对象本身:2.对象级别的插件开发,即$.fn.exte ...

  4. jQuery extend() & jQuery.fn.extend(),插件编写

    资料来源:网上资料整理并自行改编测试.复制以下代码并依赖jquery.js,jquery.validate.js即可执行.有误之处,请@我啊,敬请赐教. <!DOCTYPE html PUBLI ...

  5. $.extend()和$.fn.extend()用法和区别

    $.extend()和$.fn.extend()用法和区别: 在自己制作插件的时候会经常用到$.extend()和$.fn.extend()两个函数,无论从外观还是作用都非常的类似,但是实际上它们的区 ...

  6. jQuery.fn和jQuery.prototype jquery.extend() jquery.fn.extend()区别介绍

    这里的 jQuery , jQuery.fn , jQuery,fn,init ,jQuery,prototype 都代表什么. 来看下jQuery的源码是怎么样定义的: (function( win ...

  7. jQuery中,$.extend,$obj.extend和$.fn.extend三者的区别

    jQuery中,$.extend,$obj.extend和$.fn.extend三者的区别 现在做的一个项目,所使用的框架是基于jQuery扩展的,于是平时学了一下jQuery,了解到了它的扩展函数: ...

  8. jQuery开发自定义插件 $.extend()与$.fn.extend()

    jQuery extend()和jQuery.fn.extend() jQuery提供两个用于封装扩展的方法: 1.$.extend(); 扩展jQuery类方法,即jQuery全局方法 (在全局可直 ...

  9. 理解jQuery的$.extend与$.fn.extend

    https://www.cnblogs.com/xuxiuyu/p/5989743.html 上面这篇博客总结的很棒!!,以下对自己的认识做一个总结 <!DOCTYPE html> < ...

  10. $.fn与$.fx什么意思; $.extend与$.fn.extend用法区别; $(function(){})和(function(){})(jQuery)

    $.fn是指jquery的命名空间,加上fn上的方法及属性,会对jquery实例每一个有效. 如扩展$.fn.abc() 那么你可以这样子:$("#div").abc(); 通常使 ...

随机推荐

  1. python爬虫从入门到放弃(五)之 正则的基本使用(转)

    什么是正则表达式 正则表达式是对字符串操作的一种逻辑公式,就是 事先定义好的一些特定字符.及这些特定字符的组合,组成一个“规则字符”,这个“规则字符” 来表达对字符的一种过滤逻辑. 正则并不是pyth ...

  2. 给MySQL字段添加索引的操作

    1.添加PRIMARY KEY(主键索引): ALTER TABLE `table_name` ADD PRIMARY KEY ( `column` ) 2.添加UNIQUE(唯一索引) : ALTE ...

  3. [剑指Offer] 51.构建乘积数组

    题目描述 给定一个数组A[0,1,...,n-1],请构建一个数组B[0,1,...,n-1],其中B中的元素B[i]=A[0]*A[1]*...*A[i-1]*A[i+1]*...*A[n-1].不 ...

  4. deep learning2

    九.Deep learning的常用模型或者方法 9.1.AutoEncoder自动编码器 Deep Learning最简单的一种方法是利用人工神经网络的特点,人工神经网络(ANN)本身就是具有层次结 ...

  5. 青花瓷运用->下载历史版本App

    1.软件准备 [必备]Charles4.0.1 下载密码: jfnk [不需要,配合Charles食用效果更佳]Paw2.3.1 下载密码: t3my 2.正式开始 2.1 打开Charles青花瓷 ...

  6. zlog使用手册

    zlog使用手册 来源 http://hardysimpson.github.io/zlog/UsersGuide-CN.html Contents Chapter 1  zlog是什么? 1.1   ...

  7. [CF1060F]Shrinking Tree

    description codeforces 给一棵\(n\)个节点的树,每次等概率选择树中剩下边的一条进行缩边,这条边的两个端点有相同的概率被保留,求最后每个点被留下的概率. data range ...

  8. Git 常用操作(一)

    使用git pull文件时和本地文件冲突: $ git stash $ git pull $ git stash pop stash@{0}   [还原暂存的内容] 上传项目流程: pwd git p ...

  9. maven打包jar源码至私服

    1. setting文件 配置私服中设置的用户和密码 <servers> <server> <id>releases</id> <username ...

  10. 用户登录拦截器查询到登录用户后如何将用户信息传递到后面的Controller

    taotao创建订单代码中之前忘了加入用户信息,那么加上呢? 分析:用户创建订单的时候,我们会强制要求用户先登录,也就是说,创建订单的Controller执行时,一定是用户已经登录了的,而用户只要登录 ...