jQuery中css()和attr()要領的區分

要領引見:

css():

html代碼:

<div class="box" id="box" style="width: 300px;height: 100px;background-color: yellow"></div>

jQuery代碼:

<script type="text/javascript">
    var oBox = $("#box");
    // 只要一個參數時,是獵取對應款式的值
    console.log($("#box").css("width"));// 返回300px

    // 兩個參數時,是設置對應的款式屬性
    oBox.css("width", "400");
    console.log($("#box").css("width"));// 返回400px
    // 也支撐對象情勢舉行設置款式
    oBox.css({
        "width": 500,
        "height": "500px",
        "background-color": "yellow"
    });
</script>

attr():

html代碼:

<div class="box" id="box" style="width: 300px;height: 100px;background-color: yellow"></div>
<img src="images/0.jpg" alt="" id="pic">

jQuery代碼:

<script type="text/javascript">
    var oBox = $("#box");
    var oImg = $("#pic");
    // 一個參數為讀取對應的屬性,屬性的都能夠讀取,包含style
    console.log(oImg.attr("id"));// 返回pic
    console.log(oImg.attr("src"));// 返回images/0.jpg

    // 設置div(oBox)上面的width屬性為400
    console.log(oBox.attr("width", "400"));
    // 假如是一個不存在的屬性,運用這個代碼,就會增加這個屬性到匹配到的元素上面 ,如oBox.attr("data-width","100px");,運用這個,oBox的Html元素上面就會新增一個data-width的屬性 
</script>    

attr()一樣能夠設置style款式:

html代碼:

<div class="box" id="box" style="width: 300px;height: 100px;background-color: yellow"></div>

jQuery代碼:

<script type="text/javascript">
    var oBox = $("#box");
    //這裡有一個重置了行內的style款式的徵象,background-color不再有用
    oBox.attr("style", "width: 310px;height: 110px");
</script>

總結:

  • css()要領是獵取/修正款式屬性(和style有關)的要領;
  • attr()是獵取/修正元素的屬性(和Html標籤有關)的要領;
  • attr()css()對style的操縱都是針對行內款式。
  • style也是元素的屬性,attr()一樣能夠對他舉行操縱,所以在功能上css()能夠看成是attr()的子集。
  • attr()操縱返回的是string,css()操縱返回的是object。

拓展:

prop()要領是獵取/修正元素的自有屬性的要領,不包含自定義的屬性。
html代碼:

<div class="box" id="box" style="width: 300px;height: 100px;background-color: yellow"></div>

jQuery代碼:

<script type="text/javascript">
    var oBox = $("#box");
    console.log(oBox.prop("style"));// 返回的是一切style的屬性和值 包含已設置的和未設置的
</script>

我是初學者程度有限,若有馬虎迎接斧正,配合進修。

    原文作者:前端肥哥
    原文地址: https://segmentfault.com/a/1190000015424618
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞