jquery学习之重要知识点


1、javascript类库,即js库,预封装了很多函数和对象,为了简化我们的js开发,最大的特点是兼容各大浏览器,即不需要考虑兼容性问题,链式操作――方法链方式大大简化了代码的书写。

2、jquery-1.11.3.js――正常文件:有注释、空行和缩进

jquery-1.11.3.min.js――压缩文件:采用GZIP压缩技术,没有注释、空行和缩进

注:开发时为了加快加载速度,采用压缩版本,平时学习练习研发使用正常版本

3、jquery对象与DOM对象区分

jquery对象:封装DOM对象后产生的对象

DOM对象:通过DOM获取的元素,称之为DOM对象

4、jquery九大选择器

基本选择器、层级选择器、过滤选择器(基本过滤选择器、子元素过滤选择器、可见性过滤选择器、内容过滤选择器、属性过滤选择器、表单对象属性过滤选择器、)

5、可见性过滤选择器

visible  获取可见元素(不常用)

hidden  获取不可见元素(常用)

注:对visibility:hidden不起作用

6、【重点记忆】

 :not(expr) - 获取不包含指定表达式的元素

【获取class不为XXxxx元素,其中包含没有class属性的元素,not中的表达式可加单引号可不加,一般不用加】

 :has(selector) - 获取含有匹配选择器的元素的父元素

[attrName!=value] - 获取包含指定attrName的值不为value的元素(包含没有该属性的元素,与not包含一致,not也是包含没有该属性的元素)

[attrName][attrName] - 组合属性过滤选择器(交集)(与基本选择器的并集不一样)

selector1,selector2,......$(onetwo);【组合选择器】

中间用逗号隔开,全部写在一个双引号里,并集)

【隐藏元素的情况】

1.设置为display:none;

2.带有type=hidden”的表单元素

3.widthheight设置为0

4.隐藏的父元素

7、addClass() - 追加样式

无论之前是否包含样式,在此基础上追加一个新的样式,如果之前包含样式,依旧存在

attr()设置样式 - 无论之前是否包含样式,设置成当前样式,如果之前包含样式,会被覆盖

8css()方法

        获取 -css(attrName)

        设置:【设置单个】

   css(attrName, attrValue)

  注意:attrName必须是字符串类型

    【设置多个】

  css({

 attrName : attrValue,

 attrName : attrValue,

 ... ...

   })

  注意 - attrName直接定义,不需要编写成字符串类型,值不加单位

9、children()find()的区别:find是找所有后代元素,children是只找子元素

10、替换元素

    被替换元素 . replaceWith($(“替换元素”))

    replaceAll() - 实际上就是颠倒了的replaceWith()

  删除元素

    remove() - 删除自身及后代节点[自杀式,与原生DOM的原理完全不同]

      empty() - 删除后代节点,保留自身节点(特别适合:清空)

   插入元素

     内部插入 - 子元素(指定元素内)

     append() - 作为最后一个子元素插入到指定元素中

 【插入在指定元素的后面】

 【显示出来是在后面,作为子元素出现,保留各自前面的li点】

     prepend() - 作为第一个子元素插入到指定元素中

    【插入在指定元素的前面】

 【显示出来是在前面,作为子元素出现,不保留原来li前面的点】

   appendTo()

     prependTo()【只是上述操作的反操作,前后元素颠倒】

     外部插入 - 兄弟元素(指定元素外)

     before() - 作为指定元素的上一个兄弟元素插入

     after() - 作为指定元素的下一个兄弟元素插入

    【只是上述操作的反操作】

     insertBefore()

     insertAfter()

11、【注意问题】

1. js操作css的时候用驼峰。

2. 只要是加小括号的,一定是函数或方法的调用

3. 从加载上来说:写代码时不要随意位置写Js代码,csshtml是一个引擎加载,js是另一个引擎加载,如果随意写js,则引擎切换的次数越多。每一种写的顺序的方式都有自己的好处

4.this是指代DOM,不是jquery对象

5.js的函数不具备重载,叫覆盖

6.当脚本代码放在页面上边的时候,用一个全局加载ready

12jquery UI提供的功能

    1.效果(Effects)

     animate() - 自定义动画【jQueryuianimatejQuery animate的补充】

     JQUERY中的animate()无法使用的CSS属性,在这都能用

     animate()方法

  当前HTML页面既引入JQUERY也引入JQUERY UI

  两者都提供了animate()方法

  如何保证调用的animate()一定是JQUERY UI提供的?

  原因 - JQUERY是先引入的,animate()方法被覆盖

    JavaScript的函数不具备“重载”而是“覆盖”,后面的代替了前面的   

2.交互(Interactions)

3.组件(Widgets)

  dialog,对话框是开发中比较重要的元素

13自调函数 - 尽量避免全局变量和函数(对象)

      原则 - 将全局改为局部

      自调函数

       (function(){

          // 定义代码

       }());//解决全局问题

 自调函数的写法至少13种以上【可自己查】

 所有全局变量都在浏览器内存里,会影响性能。

方法1:最前最后加括号

(function(){alert(1);}());

方法2function外面加括号

(function(){alert(1);})();

方法3function前面加运算符,void

void function(){alert(2);}(); //据说效率最高~

4:带参数

(function(o) {

alert(o);

})('water');

5 :匿名函数的链式调用

(function(o) {

alert(o);

return arguments.callee;

})('water')('down');

6~(function(){

alert('water');

})();

7+function(){

alert('water');

}();

8-function(){

alert('water');

}();

9~function(){

alert('water');

}();

10!function(){alert(1);}();

14、JQUERY的插件必须掌握!!!】

   如何学习JQUERY插件?

   插件官方提供的帮助文档

   插件提供的Demo示例代码

   [jquery插件是可以脱离jquery独立使用的]


本文出自 “Apple” 博客,转载请与作者联系!


注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
  © 2014-2022 ITdaan.com 联系我们: