JavaScript-选择器

    科技2022-07-16  132

    JavaScript库的概念

    JavaScript开发的过程中,处理浏览器的兼容很复杂而且很耗时,于是一些封装了这些操作的库应运而生。这些库还会把一些常用的代码进行封装。

    把一些常用到的方法写到一个单独的js文件,使用的时候直接去引用这js文件就可以了。(common.js)

    常见的JavaScript 库 - jQuery、Prototype、MooTools。其中jQuery是最常用的一个

    jQuery其实就是一个js文件,里面封装了一大堆的方法方便我们的开发,其实就是一个加强版的common.js,因此我们学习jQuery,其实就是学习jQuery这个js文件中封装的一大堆方法。

    jQuery的优点好处

    jQuery设计的宗旨是'Write Less,Do More',即倡导写更少的代码,做更多的事情。它封装JavaScript常用的功能代码,提供一种简便的操作,优化HTML文档操作、事件处理、动画设计和Ajax交互。 jQuery的核心特性可以总结为:具有独特的链式语法和短小清晰的多功能接口;具有高效灵活的css选择器,并且可对CSS选择器进行扩展;拥有便捷的插件扩展机制和丰富的插件。jQuery兼容各种主流浏览器。极大地简化了JavaScript 编程。

    jQuery的版本

    jQuery版本有很多,分为1.x 2.x 3.x 1.x版本:能够兼容IE678浏览器 2.x版本:不兼容IE678浏览器 1.x和2.x版本jquery都不再更新版本了,现在只更新3.x版本。 3.x版本:不兼容IE678,更加的精简(在国内不流行,因为国内使用jQuery的主要目的就是兼容IE678) 国内多数网站还在使用1.x的版本

    1 JQ选择器概述

    jQuery对象和DOM对象的区别

    DOM对象
    用原生JavaScript获取的DOM对象 通过document.getElementById() 获取到的元素(DOM对象) 通过document.getElementsByTagName()获取到的伪数组(集合),集合中的每一个对象是DOM对象
    jQuery对象
    jQuery对象用$()的方式获取的对象 jQuery对象又可以叫做包装集(包装的DOM对象的集合)

    注意:

    虽然jQuery对象是包装DOM对象后产生的,但是jQuery无法使用DOM对象的任何方法,同理DOM对象也不能使用jQuery里的方法.

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

    jQuery对象转换成DOM对象(两种方法): jQuery对象.get(索引值) jQuery对象[索引值] jQuery对象是包装集(集合),从集合中取数据可以使用索引的方式 DOM对象转换成jQuery对象: $(DOM对象) 只有这一种方法

    案例:网页开关灯

    // 仅仅演示对象之间的转换,代码不推荐这么写 // 获取元素; var ipts = document.getElementsByTagName('input'); // 获取第一个按钮,然后绑定事件; $(ipts[0]).click(function () { // 设置body的背景色 $('body')[0].style.background = '#fff'; }); // 获取第二个按钮,然后绑定事件; $(ipts[1]).click(function () { // 设置body的背景色 $('body').get(0).style.background = '#000'; });

    2 详细的jquery选择器

    1  基本选择器

    名称用法描述通配符选择器$(’*’)获取所有标签ID选择器$(’#id’)获取指定ID的元素类选择器$(’.class’)获取同一类class的所有元素标签选择器$(‘div’)获取同一类标签的所有元素并集选择器$(‘div,p,li’)使用逗号分隔,并集选择(群组选择器)交集选择器$(‘div.cls’)获取class为cls的div元素,交集选择器

    总结:跟css的选择器用法一模一样。

    2  层次选择器

    名称用法描述子代选择器$(‘ul > li’);使用>号,获取儿子层级的元素,注意,并不会获取孙子层级的元素后代选择器$(‘ul li’);使用空格,代表后代选择器,获取ul下的所有li元素,包括孙子等相邻选择器$(“prev + next”)选取紧接在prev元素后的next元素兄弟选择器$(“prev ~ siblings”)选取prev元素之后的所有siblings元素(不包含本身)

    3  筛选、过滤选择器

    这类选择器都带冒号:

    名称用法描述:eq(index)$(‘li:eq(2)’)获取到的li元素中,选择索引号为2的元素,索引号index从0开始。:odd$(‘li:odd’)获取到的li元素中,选择索引号为奇数的元素:even$(‘li:even’)获取到的li元素中,选择索引号为偶数的元素

    4  表单选择器

    用法描述$(’:text’)匹配文本框$(’:checkbox’)匹配复选框$(’:button’)匹配按钮 用法描述$(’:checked’)匹配选中的元素
    Processed: 0.009, SQL: 8