關於html自定義屬性


  今天在研究一個ssh項目時發現一個問題,就是html里面自定義屬性問題:

我在js中獲取自定義屬性是這樣  $(obj).myid  來獲取內容另一個id值的,然后發現在谷歌下怎么運行都是報 undefined  。拿ie試了一試,居然沒有錯,上網搜了一下,發現這篇文

章,共享一下。改成$(obj).getAttribute("myid")解決兼容性問題。

 

 

原文如下:

HTML標簽可以自定義屬性,但是我們要考慮其在IE、Firefox以及chrome下的兼容性問題。
例如:

  1. <div id="newTest" myAttr="getAttr"></div>

這里的“myAttr”就是這個標簽的自定義屬性了。

如果定義了屬性卻使用不了,那么這個屬性就沒有任何意義了,接下來就是如何去調用我們的自定義屬性的值了。

在IE瀏覽器里,我們通過獲取對象后直接調用就可以了

  1. document.getElementById("newTest").myAttr;

在IE瀏覽器里,我們同樣可以對其直接賦值而動態產生一個自定義屬性:

  1. document.getElementById("newTest").newAttr = "new";

在火狐和谷歌瀏覽器里,我們可以通過getAttribute方法來實現調用:

  1. document.getElementById("newTest").getAttribute("myAttr");

在火狐和谷歌瀏覽器里,我們可以通過setAttribute方法在產生並設置一個自定義屬性:

  1. document.getElementById("newTest").setAttribute("newAttr","new");

自定義屬性一般是我們用來存儲數據或是相關依據的,根據實際情況,自定義屬性其實很有用的。

測試瀏覽器:IE8,firefox 8.01,chrome 17.0.963.46 m
測試結果:能夠獲取到自定義屬性

另外補充一點,如果不想做兼容判斷,其實我們可以使用Jquery的attr方法來獲取與設置自定義屬性的值,目前測試結果是全兼容。

  1. $("#newTest").attr("myAttr");
  2. $("#newTest").attr("newAttr","new");


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM