zoukankan      html  css  js  c++  java
  • jquery中prop()方法和attr()方法的区别浅析

    官方例举的例子感觉和attr()差不多,也不知道有什么区别,既然有了prop()这个新方法,不可能没用吧,那什么时候该用attr(),什么时候该用prop()呢
     
    jquery1.6中新加了一个方法prop(),一直没用过它,官方解释只有一句话:获取在匹配的元素集中的第一个元素的属性值。

    大家都知道有的浏览器只要写disabled,checked就可以了,而有的要写成disabled = "disabled",checked="checked",比如用attr("checked")获取checkbox的checked属性时选中的时候可以取到值,值为"checked"但没选中获取值就是undefined。

    jq提供新的方法“prop”来获取这些属性,就是来解决这个问题的,以前我们使用attr获取checked属性时返回"checked"和"",现在使用prop方法获取属性则统一返回true和false。

    那么,什么时候使用attr(),什么时候使用prop()?
    1.添加属性名称该属性就会生效应该使用prop();
    2.是有true,false两个属性使用prop();
    3.其他则使用attr();
    项目中jquery升级的时候大家要注意这点!

    以下是官方建议attr(),prop()的使用:

    Attribute/Property .attr() .prop()
    accesskey               √  
    align                      √  
    async        √      √
    autofocus      √   √
    checked       √   √
    class          √  
    contenteditable    √  
    draggable      √  
    href         √  
    id           √  
    label         √  
    location ( i.e. window.location ) √ √
    multiple        √    √
    readOnly       √    √
    rel          √  
    selected        √   √
    src         √  
    tabindex √  
    title √  
    type √  
    width ( if needed over .width() ) √

  • 相关阅读:
    typora的使用
    kibana解决Kibana server is not ready yet问题
    docker详细
    docker 启动报错:Docker.Core.Backend.BackendException: Error response from daemon: open \.pipedocker_e
    win10的docker配置nginx
    lombok常用注解
    关于前端项目cookie的获取
    使用apt安装docker
    linux下root用户和普通用户切换
    deepin系统安装与linux磁盘分区
  • 原文地址:https://www.cnblogs.com/liduanwen/p/4760657.html
Copyright © 2011-2022 走看看