HTML元素,属性已经十分丰富了。但是,在某些场合下,也会显得捉襟见肘,这时候自定义属性就发挥了十分关键 的作用。

Html元素的自定义属性,使用起来,十分方便,例如:

<input type=”button” value=”Click Me, Baby!” />

假设我们现在需要限制,这个按钮,只能点击2次,然后就失效了。

通常的实现方式,是可以利用全局变量的形式来记录点击次数,但我们这里用自 定义属性来实现这个功能,展示一下自定义属性的优势;我们对上面的button做一下改造:

<input type=”button” value=”Click Me, Baby!” clickCount=”0” />

可以看到,我为这个button 增加了一个自定义属性 clickCount, 并将初始值设为 0;下面我们来写实现功能的js代码:

1. 给 button 增加click事件的处理

<input type=”button” value=”Click Me, Baby!” clickCount=”0” onclick=”customAttributeDemo(this);" />

2. 我们来写 customAttributeDemo(obj) 这个函数

对于IE来讲,使用自定义属性非常简单,因为IE自动将自定义属性解析到了DOM中,和标准属性没有任何区别,IE下的版本:

function customAttributeDemo(obj) {if (obj.clickCount === '0') {                obj.clickCount = '1';            } else {                obj.disabled = true;             }        }

上面的代码在 FireFox 下将失效,因为FireFox对自定义属性的使用,限制更高,只能使用 attributes[] 集合来访问,FireFox 下的代码:

function customAttributeDemo(obj) {if (obj.attributes['clickCount'].nodeValue === '0') {                obj.attributes['clickCount'].nodeValue = '1';            } else {                obj.disabled = true;            }          }

上面的代码,也适用于IE,所以,这个代码,就是具有兼容性的代码了

来源:http://hi.baidu.com/gjj003/blog/item/2c6e8de73d497f23b838204c.html

转载于:https://www.cnblogs.com/zhouchaoyi/archive/2012/03/20/2408137.html

IE、firefox下怎样获得自定义属性的值相关推荐

  1. Firefox下去掉密码自动填充

    平时喜欢在Firefox下进行开发,因为它有强大的开发工具插件,比如FireBug.Temper Data.当然,Chrome.IE也有相应的开发者工具,但是自己还是比较偏爱Firefox. 言归正传 ...

  2. 解决使用FireFox下Flash上传文件时SESSION丢失的问题(swfupload)

    解决使用FireFox下Flash上传文件时SESSION丢失的问题(swfupload) 这几天在项目中遇到的问题,稍微整理一下. HTML 表单是我们常用来进行浏览器与服务器数据交互的途径,除了传 ...

  3. easyui的combobox下拉框初始化默认值以及保持该值一直显示的方法

    easyui的combobox下拉框默认初始值是空,下面是实现从远程加载数据之后初始化默认值,以及让该值一直排在下拉框的最顶部的方式. 目前的需求是需要在初始化的时候添加"全部数据库&quo ...

  4. R语言使用pwr包的pwr.t.test函数对分组样本数相同的t检验进行效用分析(power analysis)、在已知效应量(effect size)、显著性水平、样本量的情况下计算假设检验的效用值

    R语言使用pwr包的pwr.t.test函数对分组样本数相同的t检验进行效用分析(power analysis).在已知效应量(effect size).显著性水平(sig).样本量(sample s ...

  5. 火狐浏览器设置cookie失败_IE、谷歌Cookie记录失败,火狐成功(IE和Firefox下的Cookie兼容问题)...

    昨天项目迁移了测试服务器,之后奇怪的问题出现了. IE.谷歌无法登陆,火狐可以登陆. 这个项目先后部署过两个测试服务器.一台正式服务器,登陆都是正常的,这次却突然出现这种奇怪的问题,很是纠结. 通过查 ...

  6. js中event,event.srcElement,event.target在IE和firefox下的兼容性

    1.window.event对象 IE:有window.event对象 firefox:没有window.event对象.可以通过函数的参数传递event对象.例 如:οnmοusedοwn=func ...

  7. firefox下几个实用的免费开发插件

    今天在看Ajax基础教程,看到书中推荐了几个不错的工具 WebDeveloper 提供了许多开发中十分有用的环境模拟工具,如禁用JavaScript,描出页面中的隐藏表单等,对于web脚本开发人员特别 ...

  8. (转)解决在firefox下js调用as失败问题

    解决在firefox下js调用as失败问题 自:http://www.cnblogs.com/mfryf/archive/2012/04/17/2453024.html 问题描述:写了一个js与as的 ...

  9. Firefox下代码触发a标签的click事件无效

    通过一次导出功能是让自己如何一步一步掉坑最后又是怎么爬起来的 在页面中通过document.createElement('a');创建一个a标签,然后给a标签的href属性赋url,通过代码触发a标签 ...

最新文章

  1. linux大文件拷贝,Linux如何提高大文件的拷贝效率
  2. std::alloc具体细节
  3. android 组件化_你曾遇到的某大厂奇葩问题:Android组件化开发,组件间的Activity页面跳转...
  4. 【英语学习】【WOTD】katzenjammer 释义/词源/示例
  5. Android Studio Tips -- 提取方法
  6. 目前全球最主流的四种Android架构简介与理解
  7. Qt处理图片背景为透明色
  8. C#/VB.NET 如何旋转PDF页面
  9. 畅捷通T+ v2接口 发布IIS报错 RsaUsingSha with PSS
  10. Code Project精彩系列二
  11. 联通物联卡为什么没有网络_物联网卡显示3g 联通物联网
  12. 微信摇一摇动画效果加音效
  13. 剩余电流动作继电器在游乐场中的安全应用
  14. 大电流滑环结构特征有哪些
  15. 当前计算机用户没有管理员权限,两个方法轻松解决Win7没有管理员权限的问题...
  16. STM32F0的内部RC振荡配置
  17. @我的生活必备软件:大集中(强烈推荐)(转)
  18. 米4用linux刷机救转,小米4线刷刷机教程_小米4第三方rom包_救砖系统刷机包下载...
  19. eclipse快捷键收藏
  20. 初探UE4——用Maya为Mixamo上下载的模型和动作骨骼添加根运动节点

热门文章

  1. mongo java aggregate_java使用spring + mongo进行Aggregation聚合查询
  2. 一图说清:做数据分析,到底要懂多少业务知识?
  3. 在开发过程中调试报表插件详细教程
  4. exit函数_Linux进程间通信详解(三) 消息队列及函数
  5. python32位系统下载_pythonwin下载-PythonWin 32位(Python集成开发环境) 3.6 官方版 - 河东下载站...
  6. php 把查询数据转json格式,php将从数据库查询到的数据转化为json格式,并写入json文件中...
  7. wps可以登录网页版_教程丨WPS会员半自动打卡
  8. 牛客寒假算法基础集训营4
  9. 洛谷 P4823 [TJOI2013]拯救小矮人
  10. Java 1.1.4 检测字符串是否相等