<div style="display:block;">
<input/>
</div>
<div style="display:none;">
<input/>
</div>

如上的两个input元素,获取两个input元素,常规的按index、id或判断等形式也能实现,但是很麻烦,可以用以下办法

$(".div[style='display:block;'] input")

注意“;”分号不能省略.

这里的style是指元素的style属性,并非css属性,否则如下改变之后同样的方法获取元素会失效

if($(this).css("display")=='none'){
$(this).attr('display','block');
}else{
$(this).css('display','none');
}

如要操作css属性,可选用attr方法,如

if($(this).css("display")=='none'){
$(this).attr('style','display:block;');
}else{
$(this).attr('style','display:none;');
}

如欲详细了解css属性与元素属性,请移步@参考文章,原文全文如下

 使用jquery的.attr( )方法去给div隐藏,这样写的 $("#div_id").attr("display","none"),发现并没有生效,但是docunment.getElementById("div_id").style("display","none")就生效了。 而且再调试的时候发现,使用$("#div_id").attr("width","180")也是生效的....

原因:应该写成 $("#div_id").css("display","none")  

            display属于css中的属性,而不属于该div的属性,而width既是div的属性,也是css的属性,所以会出现上面的情况,以后再使用jquery去修改某一标签的style 使用css( ),修改元素的属性  使用attr( )。

总结:

attr(): 获取和修改的是元素的属性,如img的src属性和alt属性,a链接的href属性等等。

css() :获取和修改的是样式里面的属性,即是style里面的属性。
---------------------
作者:chdyiboke
来源:CSDN
原文:https://blog.csdn.net/chdyiboke/article/details/82700001
版权声明:本文为博主原创文章,转载请附上博文链接!

jQuery根据style筛选元素的更多相关文章

  1. jquery筛选元素函数

    jquery筛选元素函数 1.过滤匹配第二个p元素: $("button").click(function(){ $("p").eq(1).css(" ...

  2. jquery 筛选元素 (3)

    .addBack() 添加堆栈中元素集合到当前集合中,一个选择性的过滤选择器. .addBack([selector]) selector 一个字符串,其中包括一个选择器表达式,匹配当前元素集合,不包 ...

  3. jquery 筛选元素(1)

    .eq() 减少匹配元素的集合为指定的索引的那一个元素. .eq(index) index一个整数,指示元素的位置,以0为基数. $("li").eq(2).css('backgr ...

  4. jQuery children等筛选用法

    jQuery children等筛选用法: <%@ page language="java" import="java.util.*" pageEncod ...

  5. jQuery初探 jQuery选取和操纵元素的特点

    jQuery初探 jQuery选取和操纵元素的特点 JavaScript选取元素 先来看看不用jQuery的时候我们是怎么处理元素选取的. JavaScript选取元素的时候,可以根据id获取元素,当 ...

  6. [jQuery]无法获取隐藏元素(display:none)宽度(width)和高度(height)的新解决方案

    在做茶城网改版工作的时候,又遇到一个新问题,我需要用jQuery写一个通过点击左右图标来翻阅图片的小插件,写好后测试可以正常运行,但是放到Tab中后发现只有第一个Tab中的代码能够正常运行,其它全部罢 ...

  7. jQuery选取和操纵元素的特点

    jQuery选取和操纵元素的特点 JavaScript选取元素 先来看看不用jQuery的时候我们是怎么处理元素选取的. JavaScript选取元素的时候,可以根据id获取元素,当id不存在的时候, ...

  8. 通过jquery隐藏和显示元素

    通过jquery隐藏和显示元素 调用jquery本身提供的函数 $("xxx").hide();//隐藏xxx $("xxx").show();//显示xxx ...

  9. jQuery无法获取隐藏元素(display:none)宽度(width)和高度(height)的新解决方案

    用jQuery写一个通过点击左右图标来翻阅图片的小插件,写好后测试可以正常运行,但是放到Tab中后发现只有第一个Tab中的代码能够正常运行,其它全部罢工了. 用Chrome自带的开发工具一查,发现罢工 ...

随机推荐

  1. 十四.Protobuf3扩展

    在您发布使用Protocol Buffer区的代码后,您迟早会因为业务需求变更想要“改进”Protocol Buffer的定义.如果你想让你的新Protocol Buffer向后兼容,让你的旧Prot ...

  2. Hibernate的持久化对象

     Hibernate的持久化类 什么是持久化类        1. 持久化类:就是一个Java类(咱们编写的JavaBean),这个Java类与表建立了映射关系就可以成为是持久化类.        * ...

  3. VC中文件路径问题

    环境:xp+vs2010 1.如果出现这样的路径,input.txt表示在解决方案目录(前提是项目包在解决方案目录下的一个包)下,也就是与你的解决方案XXX.sln平行. ifstream in(&q ...

  4. export的几种用法

    记录一下export的几种写法. 0.入口文件为index.js,引用add-content.js的内容 1.  export default 方式,直接导出变量 add-content.js的内容如 ...

  5. 使用session存储数据

    @WebServlet("/reply") public class ReplyServlet extends HttpServlet { @Override protected ...

  6. 学到了林海峰,武沛齐讲的Day34 完 线程 进程 协程 很重要

    线程 进程 协程 很重要 ...儿子满月回家办酒,学的有点慢,坚持

  7. C# mysql 处理 事务 回滚 提交

    MySqlConnection myCon; void iniMysql() { //连接数据库 myCon = new MySqlConnection("server=127.0.0.1; ...

  8. TCPDUMP抓包学习

    一.抓包基础 1.抓网卡ens33 的包,有多大抓多大,然后保存到a.cap中 [root@localhost ~]# tcpdump -i ens33 -s -w a.cap tcpdump: li ...

  9. [mysql8]新坑哈 更改Mysql 表的大小转换设置lower_case_table_names=1

    在安装了8.0.14之后,初始化的时候在my.cnf里设置了lower_case_table_names=1,安装好了之后,启动报错: 1 2 3 4 5 2019-01-28T13:24:24.91 ...

  10. Pytest权威教程04-断言的编写和报告

    目录 断言的编写和报告 使用assert语句进行断言 异常断言 警示断言 使用上下文对比 自定义断言对比信息 高级断言内省 返回: Pytest权威教程 断言的编写和报告 使用assert语句进行断言 ...