zoukankan      html  css  js  c++  java
  • 关于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");
  • 相关阅读:
    5.1、字符串插入
    2.2、部署 Discuz!
    7.1.5、测试数组
    4.2、php 注释
    5.2、操作符
    2.3、初始化 Discuz!
    5.3、控制结构
    gradle 又一项目构建工具
    1.1、概述
    7.1.8、通过追加数组的方式创建数组
  • 原文地址:https://www.cnblogs.com/fzll/p/3256333.html
Copyright © 2011-2022 走看看