zoukankan      html  css  js  c++  java
  • jQuery根据style筛选元素

    <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
    版权声明:本文为博主原创文章,转载请附上博文链接!
    View Code
  • 相关阅读:
    Roce ofed 环境搭建与测试
    Ubuntu 1804 搭建NFS服务器
    Redhat 8.0.0 安装与网络配置
    Centos 8.1 安装与网络配置
    SUSE 15.1 系统安装
    VSpare ESXi 7.0 基本使用(模板、iso、SRIOV)
    VSpare ESXi 7.0 服务器安装
    open SUSE leap 15.1 安装图解
    KVM虚拟机网卡连接网桥
    GitHub Action一键部署配置,值得拥有
  • 原文地址:https://www.cnblogs.com/yanan7890/p/11698403.html
Copyright © 2011-2022 走看看