zoukankan      html  css  js  c++  java
  • attr和prop

    /*
    * 对于DOM对象来说:
    *
    * 所有书写在html中的属性,都是DOM元素的属性节点,
    * 通过setAttribute设置的属性,也都是DOM元素的属性节点。
    *
    * 有一个attributes属性,该属性存储了该DOM所有的属性节点,
    * 这些属性节点都是DOM对象,拥有DOM的特征,比如都有nodeType。
    * */

    /*
    * 对于DOM对象来说:
    *
    * 所有通过.或者[]添加的属性,与普通的对象一样,
    * 都称之为对象的属性,注意这些属性不是属性节点,
    * 不存在与attributes中,而是直接被添加到了DOM对象自身。
    *
    * 同时这些属性,没有共同特征,只是一个值。
    * */

    /*
    * attr方法:
    * 操作的是DOM的属性节点。
    * 传入一个参数为字符串,获取第一个元素指定的属性节点值
    * 传入一个参数为对象,则给所有元素批量设置对象中所有的属性节点
    * 传入两个参数,则给所有元素添加指定的属性节点
    * */

    // 一个参数为字符串,是获取操作,对返回值有具体要求,没办法再返回this了
    console.log($('span').attr('test'));
    console.log($('span').attr('meiy'));

    // 一个参数为对象,是设置操作,
    // 对返回值没有要求,凡是没有要求的,jQ都会返回this实现链式编程
    console.log($('span').attr({
    a: 'aaa',
    b: 'bbbb',
    c: 'cccc'
    }));

    // 传入两个参数,是设置操作,
    // 对返回值没有要求,凡是没有要求的,jQ都会返回this实现链式编程
    console.log($('span').attr('ppp', 'igig'));


    $('span').attr({
    q: 'qqq'
    }).attr('w', 'wwwww').css({
    display: 'block',
    marginTop: '5px',
    height: '20px',
    backgroundColor: 'pink'
    });

    attribute是HTML中定义的,properties是DOM中定义的。
    大部分attribute和property是对应的,但有些例外,比如value attribute是初始值,value property是当前值。

  • 相关阅读:
    上下文管理
    复习1
    描述符
    迭代器斐波那契数列
    迭代器协议
    __call__ 方法
    析构方法__del__
    __module__和class
    1.8命令执行顺序控制与管道(学习过程)
    1.7文件系统操作与磁盘管理(学习过程)
  • 原文地址:https://www.cnblogs.com/luxiaoxiao/p/6105375.html
Copyright © 2011-2022 走看看