深入学习jQuery选择器系列第六篇——过滤选择器之状态选择器

×

目录

[1]焦点状态 [2]哈希状态 [3]动画状态[4]显隐状态

前面的话

  过滤选择器的内容非常多,本文介绍过滤选择器的最后一部分——状态选择器

焦点状态

:focus

  :focus选择器选择当前获得焦点的元素

<div>
   <button>btn1</button>
   <button>btn2</button>
   <button>btn3</button>
</div>
<script>
document.onclick = function(){
    $(‘:focus‘).css(‘color‘,‘red‘);
}
</script>

  对应于CSS选择器:focus

:focus{color:red}

  如果用javascript实现类似效果

var tags = document.getElementsByTagName(‘*‘);
for(var i = 0; i < tags.length; i++){
    tags[i].onfocus = function(){
        this.style.color = ‘red‘;
    }
}

哈希状态

:target

  :target选择器用于匹配锚点对应的目标元素

<div>
    <a href="#test">锚点</a>
    <div id="test">变色</div>
</div>
<script>
window.location = ‘#test‘;
$(‘:target‘).css(‘color‘,‘red‘);
</script>

  对应的CSS选择器是:target选择器,用于匹配锚点对应的目标元素

:target{color:red;}

动画状态

:animated

  :animated选择器选择所有正在执行动画效果的元素

<button id="btn">run</button>
<div id="mover" style="height:30px;width: 30px;background-color: green;"></div>
<script>
function animateIt() {
  $("#mover").slideToggle("slow", animateIt);
}
animateIt();
btn.onclick = function(){
     $("div:animated").css(‘background-color‘,‘red‘);
}
</script>

显隐状态

:hidden

  :hidden选择器选择所有隐藏的元素,返回集合元素

隐藏

  元素不可见并不是隐藏,元素被认为隐藏有以下几种情况:

  【1】display:none

  【2】表单元素的type=‘hidden‘

  【3】宽度和高度都设置为0

  【4】祖先元素是隐藏的

  [注意]元素visibility: hidden或opacity: 0被认为是可见的,因为他们仍然占据布局空间

:visible

  :visible选择器选择所有可见的元素,如果元素占据文档一定的空间,元素被认为是可见的

  [注意]隐藏元素上做动画,元素被认为是可见的,直到动画结束

<button id="btn1">$(‘#test :hidden‘)</button>
<button id="btn2">$(‘#test :visible‘)</button>
<button id="reset">还原</button>
<div id="test">
    <div>
        <div style="display:none;">hidden</div>
        <div>visible</div>
    </div>
    <form>
        <input type="hidden" />
        <input/>
    </form>
</div>
<script>
reset.onclick = function(){history.go();}
btn1.onclick = function(){this.innerHTML = ‘有‘+$(‘#test :hidden‘).length+‘个隐藏元素‘}
btn2.onclick = function(){this.innerHTML = ‘有‘+$(‘#test :visible‘).length+‘个可见元素‘}
</script> 
时间: 2024-08-07 17:54:44

深入学习jQuery选择器系列第六篇——过滤选择器之状态选择器的相关文章

深入学习jQuery选择器系列第四篇——过滤选择器之属性选择器

× 目录 [1]简单属性 [2]具体属性 [3]条件属性 前面的话 属性过滤选择器的过滤规则是通过元素的属性来获取相应的元素,对应于CSS中的属性选择器.属性过滤选择器可分为简单属性选择器.具体属性选择器和条件属性选择器三种.本文将详细该部分内容 简单属性选择器 [attribute] [attribute]选择器选择拥有该属性的元素,返回集合元素 //选择拥有title属性的所有元素 $('[title]') //选择拥有title属性的所有span元素 $('span[title]') //

深入学习jQuery选择器系列第五篇——过滤选择器之内容选择器

× 目录 [1]contains [2]empty [3]parent[4]has[5]not 前面的话 本文介绍过滤选择器中的内容选择器.内容选择器的过滤规则主要体现在它所包含的子元素或文本内容上 :contains(text) :contains(text)选择器选择含有文本内容为'text'的元素,返回集合元素 //返回所有文本内容包含'test'的元素 $(':contains("test")') //返回所有文本内容包含'test'的span元素 $('span:contai

深入学习 jQuery 选择器系列第三篇——过滤选择器之索引选择器 - 小火柴的蓝色理想 - 博客园

博客地址:   http://www.cnblogs.com/xiaohuochai/p/5807292.html#3559878 写的很细致的博文, 手动收藏+转发.

深入学习jQuery选择器系列第八篇——过滤选择器之伪子元素选择器

× 目录 [1]通用形式 [2]反向形式 [3]首尾元素 [4]唯一元素 前面的话 本文是子元素选择器的续篇,主要介绍关于nth-of-type()选择器的内容.该部分内容并非没有出现在<锋利的jQuery>一书中,nth-of-type()选择器参照CSS中的nth-of-type选择器,于1.9版本新增,本文将详细介绍该内容 通用形式 :nth-of-type() 个人认为,:nth-of-type()选择器不应该归类于子元素选择器,也不完全等同索引选择器,因为其索引是指特定元素的索引,但

CSS3 选择器之基本选择器

CSS是一种用于屏幕上渲染html,xml等一种语言,CSS主要是在相应的元素中应用样式,来渲染相对应用的元素,那么这样我们选择相应的元素就很重要了,如何选择对应的元素,此时就需要我们所说的选择器.选择器主要是用来确定html的树形结构中的DOM元素节点. CSS3的常用选择器有: 下面举几个例子来说明选择器的实用方法: 1.创建如下的DOM结构: <div class="demo"> <ul class="clearfix"> <li

Egret入门学习日记 --- 第三十六篇(书中 10.7 ~ 10.8 节 内容)

第三十六篇(书中 10.7 ~ 10.8 节 内容) 开始 书中 10.7 节内容. 书中 10.7 节内容结束. 书中重点: 1.导出素材. 2.配置粒子库. 3.播放动画. 开始操作: 1.导出素材. 我设置好了雪花的效果. 接着是导出. 这是导出后的资源文件. 导入Egret的预加载资源组中. 2.配置粒子库. 下载好官方的粒子库. https://github.com/egret-labs/egret-game-library 拷贝粒子库到项目外,记住 项目文件夹外! 配置好 egret

jquery选择器之层级选择器

<!DOCTYPE html><html> <head> <meta http-equiv="Content-type" content="text/html; charset=utf-8" /> <title></title> <link rel="stylesheet" href="imooc.css" type="text/css&q

jQuery过滤选择器之伪类选择器和内容选择器

jQuery给我们提供了很多简易用的方法,jQuery过滤选择器是其中一种.过滤器主要通过特定的过滤规则来筛选所需DOM元素,使用冒号(:)开关. 一.基本过滤器 :first选取第一个元素(单个元素)$('li:first') :last选取最后一个元素(单个元素)$('li:last') :not(selector)等到class不是blue的元素$('li:not(.blue)')  选取class不是blue的元素 :even选择索引(0开始)是偶数的所有元素(集合元素)$('li:ev

CSS选择器之基本选择器总结

一.元素选择器(所有浏览器支持) 元素选择器(标签名选择器)其实就是文档的元素,如html,body,p,div等等, 下面例子中选择了span元素,并设置了字体颜色为红色. <body> <p>这里使用<span>标签名选择器</span>改变了样式</p> </body> CSS: span{ color: red; }  效果: 二.类选择器 (所有浏览器都支持类选择器,但多类选择器(.className1.className2