jQuery 学习笔记——Review

整体地看了一遍《锋利的jQuery》这本书,作者对jQuery这个脚本库进行了非常详细的解答,通俗易懂,但是感觉对AJAX我还是云里雾里,过两天有网了还是要撸一下AJAX。同时,我对里面的API还是不够熟悉,过一段时间,还要再看一遍!再对着上面的代码再敲一遍才好。等JS高程全部搞懂了,一定要把JQ的源码撸一遍!

jQuery对象和DOM对象的相互转换:

1
2
3
4
5
var variable1 = jQuery对象;  //新定义一个jQuery对象
var variable2 = DOM对象; //新定义一个DOM对象
//将jQuery对象转为DOM对象
var cr = $("#cr");
var cr = $cr[0]; //或使用 var cr = $cr.get[0];

多个JS库争夺符号“$”控制权的解决办法

在其他库加载完毕后,可以在任何时候调用jQuery.noConflict()方法来将变量”$”的控制权移交给其他的JS库,同时,当需要使用jQuery库中的方法时,可直接调用jquery()方法即可。
当然,此时也可使用变量对其进行替代,需要调用时,直接使用变量就好了。

1
var $j = jquery.noConflict();

jQuery的对象检查方式

jQuery在搜索对象时,即使该对象不存在,jQuery也不会报错,因此当直接使用调用的对象进行布尔运算时,会一直显示为true,因此,在判断该对象是否存在时,应当使用如下方法:

1
2
3
if( $content.length){
//Do something
}

注:当jQuery的id对象有多个时,调用$(“#id”);永远显示的是第一个id对象。

子元素和后代元素的区别

子元素 Ex: $("parent > child");
后代元素:Ex: $("parent dessemdant");
区别: 子元素选择的是parent元素的儿子辈,而后代元素选择的是parent元素的子、孙、曾孙加上以后的辈。

选取规则

选取紧接在prev元素后的next元素(仅选择一个元素)

1
$("prev + next");  //等价于 $("prev").next("next");

选取prev元素后的所有sibling元素

1
$("prev ~ siblings");   //等价于  $("prev").nextAll("siblings")

选取含有文本内容为“我”的元素

1
$("div:contains("我")");

选取含有选择器所匹配的元素的元素

1
$("div:has(p)")

remove()方法的特殊属性

当节点使用remove()方法被删除后,该节点包含的所有后代节点都将同时被删除,这个方法的返回值是一个指向已被删除的节点的引用,因此可以在之后再次使用。

css()方法的命名规则

在css()方法中,若属性带有“-”连接符,则此时官方建议使用驼峰命名法进行代替,否则直接引用带”-“的属性时,需要加上引号。

1
$("p").css({fontSize: "30px","background-color": "#888"})

关于height()方法和css()中的css(“height”)方法

两者无较大区别,但是当给height()方法设置值时,默认的单位为px,若使用其他单位,则需要加上引号。
height()方法获得的是页面的实际高度,而css()获取的高度根据设置的值的单位决定,也有可能为auto。

判断当前元素是否处于动画状态

判断当前元素是否处于动画状态,是写动画时常常需要的一个判断方法,可以防止在多次点击按钮后,页面不停跳转的问题。

1
2
3
if(!$("element").is(":animated")){
//若当前无动画,则进行新动画
}

文章目录
  1. 1. jQuery对象和DOM对象的相互转换:
  2. 2. 多个JS库争夺符号“$”控制权的解决办法
  3. 3. jQuery的对象检查方式
  4. 4. 子元素和后代元素的区别
  5. 5. 选取规则
  6. 6. remove()方法的特殊属性
  7. 7. css()方法的命名规则
  8. 8. 关于height()方法和css()中的css(“height”)方法
  9. 9. 判断当前元素是否处于动画状态
|