jquery 本身 是由 Resig: 莱希格, 一个美国的小伙子小伙伴开发的, 在2005年 prototype发表之后, 在2006年1月发表的, 后来进入mozilla工作, mozilla的js调试器 很强大的!

在jquery中, 为了书写和 描述的方便, 通常用 $ 来代替 jQuery. 即: $ === jQuery. $就是jquery

$号是jQuery“类”的一个别称,$()构造了一个jQuery对象。所以,“$()”可以叫做jQuery的构造函数

关于标题所将的问题, 参考这篇文章很好: http://www.jb51.net/article/42750.htm

可以对jquery 进行扩展. 就要理解jquery的类和 jquery的类实例:

  • jquery类, 可以把jQuery 看成是一个 封装了的 类, 它有很多方法, 这些方法分为 静态方法(即 类方法), 成员方法(即 实例方法)

  • jQuery本身就是 一个类! 要扩展 / 增加/ 自定义 jQuery 的 "类方法" , 这个 类作用域 的方法, 就相当于jQuery的 静态方法"类方法", 就使用 jQuery.extend();

jquery使用extend 方法 来扩展 其功能和方法. 注意这里的extend 是一个 方法! 所以 应该 按照 方法的 格式 来 调用 写代码: <script type="text/javascript"> $.extend(..... ); </script> 使用 extend方法.

  • 要扩展/添加, jquery的 实例 的 方法, 就要使用 jQuery 的fn ,即 prototype的 方法和属性. 即 fn=prototype

prototype: ['pr2ut2taip]: 原型 : 事物最开始的模型, 最开始的摸样叫 原型; 也有 "模型" model的意思!!

propagate: [prap2'geit], 中间的单词 是 "page", 表示 传导, transmit, 扩散 spread的意思. jquery有 : stopDefault, stopPropagate的方法...

  • 使用方法: 对jQuery 类和 jQuery.fn实例 进行扩展后 ,就可以直接 用 $. your_extend_method(), 和 $("selector").your_extend_method()来使用了:

例子:

  1. 要扩展jquery中的方法, 可以用 $.fn.extend(..)方法, 也可以使用 "把方法名提出来, 直接定义:"

    $.fn,  jQuery.prototype.extend_name_custom = function() {
    // 这个里面要使用 $this = $(this);
    $this.find('div').html('test');   // $this 就是你要使用这个方法的, 前面选中的这个变量.
    .....
    
    }
    
     jQuery.prototype.extend_name_custom2 = function() {
    // 这个里面要使用 $this = $(this);
    $this.find('div').html('test');   // $this 就是你要使用这个方法的, 前面选中的这个变量.
    .....
    
    }
    
  2. 也可以像下面这种, 使用匿名的 函数调用 jQuery: https://q.cnblogs.com/q/65738/

    (function($){
        $.fn.extend(
            myAttr: "myvalue",
            myFun: function(){ $this = $(this);.....},  
    
        );
    
    })(jQuery);     // 末尾一定要加分号, 表示这里 是在 调用一个 匿名的函数.
    
  3. 如下的代码, 为什么会多出来 两个 undefined?

原因: 对于一个函数foo(), 如果用 alert(foo), 这个时候, foo是一个变量名, 因此显示foo的函数内容, 如果用 alert(foo()) , 由于后面加了 括号, 就表示要 调用调用这个函数, 即函数要执行! 但是, 由于 alert()中, 是要显示 一个内容的, 这里 foo()函数执行后, 如果没有返回内容 给alert使用 , 那么alert 就没有 要显示的东西, 所以这个时候, 就弹出的是 undefined. 因为alert 真的是没有 要显示的东西.

因此, 如果 在alert(foo()); 中 调用的是一个函数, 要避免显示 undefined, 就的要 这个foo()函数 return 返回 一个内容!!!


markdown 关于斜体和粗体强调?

1个表示斜体, 两个表示粗体, 3个表示粗斜体

多级列表? 支持两极 列表, 最好是把两级列表的 表示符号区分开; 多级列表 项目下, 如果有 正文段落, 则要在 [每个] 段落前加tab,

  • 列表1

    • 列表1.1
    • 列表1.2
  • 列表2 无序列表下, 但是,无序列表下 好像不可以用 有序列表
    1. 列表2.1
    2. 列表2.2
  1. 列表1

    1. 列表1.1
    2. 列表1.2
  2. 列表2 有序列表下, 也可以用 无序列表
    • 列表2.1
    • 列表2.2

正文段落列表

  • 段落1

    段落1的正文内容, foo...

    段落1的正文内容, foo...
  • 段落2

    段落2的正文内容, foo...

    段落2的正文内容, foo...
  1. 段落1

    段落1的正文内容, foo...

段落1的正文内容, foo... 这个非顶格写的段落, 就打断了 原来的排序结构! 原来的排序结构就无效了, 后面就要 重新编号了.

  1. 段落2

    段落2的正文内容, foo...

中间有多个空行, 并且顶格写, "打断" "结束" 了先前的 "层次模式" "层次结构"...

// 在没有编号的情况下, 如果用tab缩进,就表示 是代码格式.

段落2的正文内容, foo... // 在没有编号的情况下, 如果用tab缩进,就表示 是代码格式.
  1. 段落3

    段落3的正文内容, foo...

    段落3的正文内容, foo...

这就得出一个conclusion: a conclusion comes: (分 有序和 无序 列表)

  1. 要使用有序列表,其实 只要是数字加 点号就可以了, markdown自己会 去排序的, markdown是 不会 去管你怎么编号的. 所以, 使用有序编号, 只要统一使用 - 一直就使用 数字1加点号就可以了. 列表, 如果当前 这项 列表下面还有正文 内容, 则正文内容要进行缩进.

  2. 在markdown中, 一定随时 要有清晰的 层次结构! 的thinking 思想: 因为额md是按层次 来解析内容的 . 凡是 在一个 "结构"中, 后面的内容 是这个结构的 子内容, 下级内容的时候, 统一的都是 用 tab进行缩进!!

  3. 那么, 如何才能 "打断", "结束" 前面的 层次模式, 上一个 "结构状态?" 要使用两个操作结合: 一个是要输入一个空行(空行表示, 可能另外开始 一种 结构模式; ) 二是, 要用 "顶格", 非 "开头空格"的 方式写内容, 即 后面的内容 要顶格写开始!!

*** 以前,只是 知道了md 各种元素的表示方法, 但是, 就没有 这个层次 思想, 所以 有那么多的 "困惑". ***

jQuery.extend和jQuery.fn.extend的区别?的更多相关文章

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

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

  2. jQuery.fn.extend() 与 jQuery.extend()

    jQuery.fn如何扩展. jQuery插件 $.fn(object)与$.extend(object) jQuery提供了两个方法帮助开发插件 $.extend(object);扩展jQuery类 ...

  3. WHAT?【 $.fn.extend() 】vs【 $.extend() 】

    废话不多说,干货来了,转自http://www.cnblogs.com/hellman/p/4349777.html (function($){ $.fn.extend({ test:function ...

  4. jQuery.extend和jQuery.fn.extend的区别【转】

    解释的很有意思,清晰明了又有趣,转来分享下,哈哈哈 jQuery.extend和jQuery.fn.extend的区别,其实从这两个办法本身也就可以看出来.很多地方说的也不详细.这里详细说说之间的区别 ...

  5. 利用jQuery对插件进行扩展时,方法$.extend()、$.fn.extend()区别与联系

      利用JQ开发插件的方法: 1.jQuery.extend(); 2.jQuery.fn.extend(); 3.通过$.widget()应用jQuery UI的部件工厂方式创建. 由于第三种方式通 ...

  6. 区别和详解:jQuery extend()和jQuery.fn.extend()

    1.认识jQuery extend()和jQuery.fn.extend() jQuery的API手册中,extend方法挂载在jQuery和jQuery.fn两个不同对象上方法,但在jQuery内部 ...

  7. jQuery.fn.extend与jQuery.extend到底区别在哪?

    正文: 其实说白了,从两个方法本身就能看出来端倪. 我们先把jQuery看成了一个类,这样好理解一些. jQuery.extend(),是扩展的jQuery这个类. 假设我们把jQuery这个类看成是 ...

  8. 转:jQuery.fn.extend与jQuery.extend到底区别在哪?

    还是先吐个槽,网上都都是转载抄袭,基本上就那么一两篇文章,说的还不清楚.... 正文: 其实说白了,从两个方法本身就能看出来端倪. 我们先把jQuery看成了一个类,这样好理解一些. jQuery.e ...

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

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

  10. jquery的$.extend、$.fn.extend、 jQuery.extend( target, object1, [objectN])作用及区别

    jQuery为开发插件提拱了两个方法,分别是: jQuery.fn.extend(); jQuery.extend(); 虽然 javascript 没有明确的类的概念,但是用类来理解它,会更方便. ...

随机推荐

  1. AspNetPager分页控件样式的使用

    分页是Web应用程序中最常用到的功能之一,AspNetPager  简单实用,应用到项目后台中,棒极了! 自定义样式: <style type="text/css"> ...

  2. JdbcTemplate进行查询

    1.jdbcTemplate.queryForInt() 和 jdbcTemplate.queryForLong() 例如:下面使用queryForInt()方法传回user表中的记录数: jdbcT ...

  3. css书写规范及特殊样式

    1.CSS书写顺序: (1)位置:position.top.right.z-index.display.float (2)大小:width.height.padding.margin (3)文字系列: ...

  4. 前端模块化开发之seaJs

    了解后端语言的童鞋一定听过模块化开发的概念,比如java.python等后端语言都有自己的模块化特性,然而和后端语言相比,javascript还尚未实现模块化的功能,虽然之后的更高版本可能引入模块化开 ...

  5. Ampersand.js - 模块化的 JS 应用程序开发框架

    Ampersand.js 是一个高度模块化,松耦合,用于构建先进的 JavaScript 应用程序的框架.通过良好定义的方法,结合了一系列微小的 CommonJS 模块.条理清晰,没有多余的冗余代码. ...

  6. iOS 全局断点崩溃

    设置全局断点出现奔溃,可以点击继续运行不影响程序,不是程序的问题,webview和自定义xib View使用的时候

  7. 大一上学期C语言学习心得总结

    经过一个学期的C语言学习,大体算是在这个编程语言上入了门,能够通过一些代码解决特定的问题.当然,每次成功将问题转换成代码都小有激动,虽然只是在黑框上输出了一些数字或是字符串. 编程,虽然还不是很懂,但 ...

  8. 使用Servlet实现图片下载

    package chensi.com; import java.io.FileInputStream; import java.io.IOException; import java.net.URLE ...

  9. android studio 代理配置

    android studio 代理设置,只支持http代理,不能用ss服务 中间加一层http转换 1远端ss 2client ss 端口 A 3client privoxy服服 代理ss A端口 到 ...

  10. WPF之TreeList的实现方法(一)

    做项目的时候根据需求,WPF现有的控件不能完全满足我们的需求, 很多时候我们需要对现有的控件做一下加工. 最简单的我们可能会把Tree转换成List形式有的叫Grid形式就像下图一样 今天我先做一个完 ...