JQuery常用选择器功能与用法实例分析


Posted in jQuery onDecember 23, 2019

本文实例讲述了JQuery常用选择器功能与用法。分享给大家供大家参考,具体如下:

JQuery基础回顾

今天对JQuery内容进行了回顾,下面进行一些总结:

JQuery是javascript的一个库,所以二者可以相互转换,例如JQuery到Javascript,用$()获取元素,传给JS的var变量。反之JS的getElement方法获取var变量后,可以通过$(var)转化成JQuery对象。

JQuery的选择器,

id选择$("#id"),class选择$(".class"),元素选择$("elemrnt"),选择所有$("*")。层级选择器有:子选择器$("parent>child")选中直接子代,后代选择器$("ancensterdescendant")选中所有的后代元素,相邻兄弟选择器$("prev+next")选中prev之后的第一个next节点,一般兄弟选择$("prev~siblings")选中prev之后所有siblings元素。Jquery常用属性选择器如下:

$(“:first”) 选中第一个元素
$(“:last”) 选中最后一个元素
$(“:eq(n-1)”) 选中第n个元素
$(“:gt(n-1)”) 选中n个以后的所有
$(“:lt(n-1)”) 选中n个以前的所有
$(“:even”) 选中偶数个元素
$(“:odd”) 选中奇数个的元素
$(“:not(selector)”) 选中除selector选择外的所有
$(“:animated”) 选中执行动画的元素
$(“: header”) 选中标题元素,如h1、h2
$(“:visible”) 选中可见的元素
$(“:hidden”) 选中隐藏的元素

子元素选择器

$(“:first-child”) 选择第一个元素
$(“:last-child”) 选择最后一个元素
$(“:only-child”) 选择没有兄弟的元素
$(“:nth-child(n)”) 选择第n个元素
$(“:nth-last-child(n)”) 选择倒数第n个元素

First与first-child区别:

<ul>
 <li>第1个ul的第1个li</li>
 <li>第1个ul的第2个li</li>
 <li>第1个ul的第3个li</li>
</ul>
<ul>
 <li>第2个ul的第1个li</li>
 <li>第2个ul的第2个li</li>
 <li>第2个ul的第3个li</li>
</ul>

first表示(所有父元素合并后的)第一个元素;first-child表示(每个父元素的)第一个

$('ul li:first') 返回"第1个ul的第1个li"。 查找所有ul下第一个li元素

$("ul li:first-child") 返回"第1个ul的第1个li"与"第2个ul的第1个li"。 查找每个ul下第一个元素是li元素dom元素。

常用内容选择器如下:

$(“:contains(‘text')”) 选中包含文本text的元素
$(“:parent”) 选中包含内容(节点或文本)的元素
$(“empty”) 选中不包含任何内容的元素
$(“:has(selector)”) 选中包含selector选择器的元素

属性内容选择器:

$(“[attribute]”) 选中包含指定属性的元素
$(“[attribute='value']”) 选中属性等于指定值的元素
$(“[attribute!='value']”) 选中属性不等于指定值的元素
$(“[attribute^='value']”) 选中属性以指定值开头的元素
$(“[attribute$='value']”) 选中属性以指定值结尾的元素
$(“[attribute*='value']”) 选中属性包含指定值的元素
$(“[attribute|='value']”) 选中属性以指定值为前缀+'-‘的元素
$(“[attribute~='value']”) 选中属性以指定值为前缀+空格的元素
$(“[attribute1] [attributeN]”) 多个属性值括号可并列复选

例如:

<!DOCTYPE html>
<html>
<head>
  <meta http-equiv="Content-type" content="text/html; charset=utf-8" />
  <title>属性筛选选择器</title>
  <link rel="stylesheet" href="imooc.css" rel="external nofollow" type="text/css">
  <script src="http://libs.baidu.com/jquery/1.9.1/jquery.js"></script>
</head>
<body>
  <h3>[att=val]、[att]、[att|=val]、[att~=val]</h3>
  <div class="left" testattr="true" >
    <div class="div" testattr="true" name='p1'>
      <a>[att=val]</a>
    </div>
    <div class="div" testattr="true" p2>
      <a>[att]</a>
    </div>
    <div class="div" testattr="true" name="t-est">
      <a>[att|=val]</a>
    </div>
    <div class="div" testattr="true" name="a b">
      <a>[att~=val]</a>
    </div>
  </div>
  <script type="text/javascript">
     //查找所有div中,属性name=p1的div元素
     $('div[name=p1]').css("border", "3px groove red"); 
    //查找所有div中,有属性p2的div元素
    $("div[p2]").css("border", "3px groove blue"); 
    //查找所有div中,属性name中包含一个连字符"-"为前缀的div元素
    $('div[name|="t"]').css("border", "3px groove #00FF00"); 
    //查找所有div中,属性name中包含一个连字符"空"和"a"的div元素
    $("div[name~='a']").css("border", "3px groove pink"); 
  </script>
  <h3>[att^=val]、[att*=val]、[att$=val]、[att!=val]</h3>
  <div class="left" testattr="true" >
    <div class="div" testattr="true" name='start-name'>
      <a>[att^=val]</a>
    </div>
    <div class="div" testattr="true" name='name-end'>
      <a>[att$=val]</a>
    </div>
    <div class="div" testattr="true" name="attr-test-selector">
      <a>[att*=val]</a>
    </div>
    <div class="div" name="a b">
      <a>[att!=val]</a>
    </div>
  </div>
  <script type="text/javascript">
     //查找所有div中,属性name的值是用start开头的
     $("div[name^='start']").css("border", "3px groove red"); 
     //查找所有div中,属性name的值是用end结尾的
     $("div[name$='end']").css("border", "3px groove blue"); 
    //查找所有div中,有属性name中的值包含一个test字符串的div元素
    $("div[name*='test']").css("border", "3px groove #00FF00"); 
    //查找所有div中,有属性testattr中的值没有包含"true"的div
    $("div[testattr!='true']").css("border", "3px groove #668B8B"); 
  </script>
</body>
</html>

结果如下:

JQuery常用选择器功能与用法实例分析

表单选择器

$(“input:type”) 选择类型为type的表单元素
$(“:enabled”) 选择激活的表单元素
$(“:disabled”) 选择不可用的表单元素
$(“:checked”) 选择选中的表单元素
$(“:selected”) 选择选中的option元素

希望本文所述对大家jQuery程序设计有所帮助。

jQuery 相关文章推荐
jQuery实现的手风琴侧边菜单效果
Mar 29 jQuery
jQuery图片缩放插件smartZoom使用实例详解
Aug 25 jQuery
jQuery访问浏览器本地存储cookie、localStorage和sessionStorage的基本用法
Oct 20 jQuery
使用JQuery实现图片轮播效果的实例(推荐)
Oct 24 jQuery
Vue+jquery实现表格指定列的文字收缩的示例代码
Jan 09 jQuery
解决Jquery下拉框数据动态获取的问题
Jan 25 jQuery
jquery引入外部CDN 加载失败则引入本地jq库
May 23 jQuery
浅析vue-router jquery和params传参(接收参数)$router $route的区别
Aug 03 jQuery
jQuery扩展方法实现Form表单与Json互相转换的实例代码
Sep 05 jQuery
jQuery Ajax实现Select多级关联动态绑定数据的实例代码
Oct 26 jQuery
JQuery常用选择器功能与用法实例分析
Dec 23 jQuery
jQuery 实现DOM元素拖拽交换位置的实例代码
Jul 14 jQuery
Jquery属性的获取/设置及样式添加/删除操作技巧分析
Dec 23 #jQuery
JQuery中DOM节点的操作与访问方法实例分析
Dec 23 #jQuery
JQuery中的常用事件、对象属性与使用方法分析
Dec 23 #jQuery
jquery实现商品sku多属性选择功能(商品详情页)
Dec 20 #jQuery
基于jQuery实现可编辑的表格
Dec 11 #jQuery
jQuery实现可编辑的表格
Dec 11 #jQuery
jQuery实现验证用户登录
Dec 10 #jQuery
You might like
php面向对象全攻略 (八)重载新的方法
2009/09/30 PHP
PHP SPL使用方法和他的威力
2013/11/12 PHP
通过PHP自带的服务器来查看正则匹配结果的方法
2015/12/24 PHP
CentOS系统中PHP安装扩展的方式汇总
2017/04/09 PHP
PHP函数积累总结
2019/03/19 PHP
Laravel 微信小程序后端实现用户登录的示例代码
2019/11/26 PHP
可以用来调试JavaScript错误的解决方案
2010/08/07 Javascript
Js动态添加复选框Checkbox的实例方法
2013/04/08 Javascript
SOSO地图JS画出标注和中心点以html形式运行
2013/08/09 Javascript
jQuery中html()方法用法实例
2014/12/25 Javascript
第一次接触神奇的Bootstrap网格系统
2016/07/27 Javascript
在node中如何使用 ES6
2017/04/22 Javascript
详解node如何让一个端口同时支持https与http
2017/07/04 Javascript
Node.js创建Web、TCP服务器
2017/12/05 Javascript
对Vue- 动态元素属性及v-bind和v-model的区别详解
2018/08/27 Javascript
详解Vue CLI 3.0脚手架如何mock数据
2018/11/23 Javascript
在Python中使用Mako模版库的简单教程
2015/04/08 Python
python logging重复记录日志问题的解决方法
2018/07/12 Python
解决pycharm无法识别本地site-packages的问题
2018/10/13 Python
浅谈PYTHON 关于文件的操作
2019/03/19 Python
Python编程快速上手——正则表达式查找功能案例分析
2020/02/28 Python
Python中常用的os操作汇总
2020/11/05 Python
用ldap作为django后端用户登录验证的实现
2020/12/07 Python
Python虚拟环境virtualenv创建及使用过程图解
2020/12/08 Python
css3 旋转按钮 使用CSS3创建一个旋转可变色按钮
2012/12/31 HTML / CSS
详解Canvas实用库Fabric.js使用手册
2019/01/07 HTML / CSS
Banggood官网:面向全球客户的综合商城
2017/04/19 全球购物
致800米运动员广播稿
2014/02/16 职场文书
初三新学期计划书
2014/05/03 职场文书
厉行勤俭节约倡议书
2014/05/16 职场文书
地道战观后感300字
2015/06/04 职场文书
奥巴马开学演讲观后感
2015/06/12 职场文书
2016年小学端午节活动总结
2016/04/01 职场文书
Eclipse+Java+Swing+Mysql实现电影购票系统(详细代码)
2022/01/18 Java/Android
python 详解turtle画爱心代码
2022/02/15 Python
Pillow图像处理库安装及使用
2022/04/12 Python