jQuery技术

jQuery基础 (一)

字号+ 作者:H5之家 来源:H5之家 2016-08-22 16:01 我要评论( )

jQuery基础课程总共分为4个部分,分别是样式篇、事件篇、动画篇、DOM篇。此为第一个部分—样式篇,本课程主要介绍jQuery的基础语法,选择器以及jQuery的一些属性

DOM对象转化成jQuery对象
相比较jQuery转化成DOM,开发中更多的情况是把一个dom对象加工成jQuery对象。$(参数)是一个多功能的方法,通过传递不同的参数而产生不同的作用。

如果传递给$(DOM)函数的参数是一个DOM对象,jQuery方法会把这个DOM对象给包装成一个新的jQuery对象
通过$(dom)方法将普通的dom对象加工成jQuery对象之后,我们就可以调用jQuery的方法了

全选择器(*选择器)
描述:

$( "*" )

兼容性问题:
1、IE会将注释节点实现为元素,所以在IE中调用getElementsByTagName里面会包含注释节点,这个通常是不应该的
2、getElementById的参数在IE8及较低的版本不区分大小写
3、IE7及较低的版本中,表单元素中,如果表单A的name属性名用了另一个元素B的ID名并且A在B之前,那么getElementById会选中A
4、IE8及较低的版本,浏览器不支持getElementsByClassName

通过jQuery方法包装后的对象,是jQuery对象,它是一个新的对象
jQuery与DOM对象完全不是同一个东西,但是又似曾相似,因为他们都能处理DOM
通过jQuery处理DOM的操作,可以让开发者更专注业务逻辑的开发,而不需要我们具体知道哪个DOM节点有那些方法,也不需要关心不同浏览器的兼容问题,我们可以通过jQuery更友好的API进行开发,同时代码也会更加精短

$(":first") 第一个
$(":last") 最后一个
$(":not(selector)") selector是给定的选择器(筛选的条件),所有不符合这个选择器的,将被选中。
$(":eq(index)") 在匹配的集合中选择索引值为index的元素。
$(":even") 选择索引值为偶数的元素,从0开始计数。
$(":odd") 选择索引值为奇数的元素,从0开始计数。
$(":gt(index)") 选择匹配集合中,所有大于给定index(索引值)的元素。
$(":lt(index)") 选择匹配集合中,所有小于等于给定index(索引值)的元素。
$(":header") 选择所有标题元素,eg:h1~h6
$(":lang(language)") 选择指定语言的所有元素。
$(":root") 选择该文档的根元素。
$(":animated") 选择所有正在执行动画效果的元素
$(":not") 选择所有元素去除不匹配给定的选择器的元素

<script type="text/javascript">
//查找所有div中,属性name的值是用imooc开头的
$('div[name^=imooc]').css("border", "3px groove red");
</script>

<script type="text/javascript">
//查找所有div中,属性name的值是用imooc结尾的
$('div[name$=imooc]').css("border", "3px groove blue");
</script>

<script type="text/javascript">
//查找所有div中,有属性name中的值包含一个test字符串的div元素
$('div[name*="test"]').css("border", "3px groove #00FF00");
</script>

<script type="text/javascript">
//查找所有div中,有属性testattr中的值没有包含"true"的div
$('div[testattr!="true"]').css("border", "3px groove #668B8B");
</script>

样式操作.css()

通过JavaScript获取dom元素上的style属性,我们可以动态的给元素赋予样式属性。在jQuery中我们要动态的修改style属性我们只要使用css()方法就可以实现了

.css() 方法:获取元素样式属性的计算值或者设置元素的CSS属性

获取:

.css( propertyName ) :获取匹配元素集合中的第一个元素的样式属性的计算值
.css( propertyNames ):传递一组数组,返回一个对象结果

设置:

.css(propertyName, value ):设置CSS
.css( propertyName, function ):可以传入一个回调函数,返回取到对应的值进行处理
.css( properties ):可以传一个对象,同时设置多个样式

注意事项:

浏览器属性获取方式不同,在获取某些值的时候都jQuery采用统一的处理,比如颜色采用RBG,尺寸采用px
.css()方法支持驼峰写法与大小写混搭的写法,内部做了容错的处理
当一个数只被作为值(value)的时候, jQuery会将其转换为一个字符串,并添在字符串的结尾处添加px,例如 .css("width",50}) 与 .css("width","50px"})一样

.text() 得到匹配元素集合中每个元素的合并文本,包括他们的后代
.text( textString ) 用于设置匹配元素内容的文本
.text( function(index, text) ) 用来返回设置文本内容的一个函数
注意事项:

html与.text的异同:

.html与.text的方法操作是一样,只是在具体针对处理对象不同
.html处理的是元素内容,.text处理的是文本内容
.html只能使用在HTML文档中,.text 在XML 和 HTML 文档中都能使用
如果处理的对象只有一个子文本节点,那么html处理的结果与text是一样的
火狐不支持innerText属性,用了类似的textContent属性,.text()方法综合了2个属性的支持,所以可以兼容所有浏览器

 

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

相关文章
  • jQuery Easyui快速入门教程

    jQuery Easyui快速入门教程

    2016-08-24 17:02

  • 【jquery入门】学习01

    【jquery入门】学习01

    2016-08-22 15:01

  • jQuery回调函数

    jQuery回调函数

    2016-08-20 17:02

  • jQuery插件学习教程之SlidesJs轮播+Validation验证

    jQuery插件学习教程之SlidesJs轮播+Validation验证

    2016-08-20 16:07

网友点评