小心onpropertychange在ie8上的地雷[通俗易懂]

onpropertychangeonpropertychange的话,只要当前对象属性发生改变,都会触发事件,但是它是IE专属的

大家好,又见面了,我是你们的朋友全栈君。

今天遇到一个很神奇的bug,网站上面有个表单提交的页面需要做是否离开此页的功能(就是如果修改了表单后未保存就离开这个页面),之前做这个功能的人为了方便就把input标签写成这样:

<input id="a" type="text" onpropertychange="check()" />

最近做了一些功能扩展,于是前端那边就直接按照这种写法写进去。

然后在写js的时候,又加了一段:

$(document).ready({
    $("#a").bind('blur',function(d){....});
});

然后就发现在ie8上面,没有修改表单也会出现提示。

调试了一下,没有发现任何代码的错误。而且只有在ie8上才回重现这个bug。想想之前改过的那些操蛋的ie8的bug。我开始在ie8上面找问题。

onpropertychange的话,只要当前对象属性发生改变,都会触发事件,而且这个玩意是ie专属的

好吧,进入ie8的调试模式,发现页面在加载的时候顺便触发了#a的onpropertychange事件。于是我猜想是不是那段#a的blur代码影响了,将blur事件换乘οnblur=”ablur();”,居然真的好了

后面尝试了一下,原来ie8判断在js上为标签添加的事件都属于属性的变化,所以会触发onpropertychange事件。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/127728.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • Sklearn库计算TFIDF

    Sklearn库计算TFIDFSklearn库计算TFIDF贴代码fromsklearn.feature_extraction.textimportCountVectorizer,TfidfTransformer#定义函数defTF_IDF(corpus):vectorizer=CountVectorizer()#该类会将文本中的词语转换为词频矩阵transformer=TfidfTransformer()#该类会统计每个词语的tf-idf权值x=vectorizer.fit_tr

    2022年10月10日
  • 详述 SQL 中的 distinct 和 row_number() over() 的区别及用法「建议收藏」

    详述 SQL 中的 distinct 和 row_number() over() 的区别及用法「建议收藏」1前言在咱们编写SQL语句操作数据库中的数据的时候,有可能会遇到一些不太爽的问题,例如对于同一字段拥有相同名称的记录,我们只需要显示一条,但实际上数据库中可能含有多条拥有相同名称的记录,从而在检索的时候,显示多条记录,这就有违咱们的初衷啦!因此,为了避免这种情况的发生,咱们就需要进行“去重”处理啦,那么何为“去重”呢?说白了,就是对同一字段让拥有相同内容的记录只显示一条记录。那么,如

  • JSONObject与JSONArray的使用

    JSONObject与JSONArray的使用

  • 怎么解决myeclipse带入乱码_myeclipse控制台乱码

    怎么解决myeclipse带入乱码_myeclipse控制台乱码怎么解决Myeclipse导入项目中文乱码?Myeclipse之所以会出现乱码问题是因为Myeclipse编辑器选择的编码规则是可变的。下面,小编就为大家介绍下解决Myeclipse导入项目中文乱码方法。一、将整个project设置编码UTF-8(UTF-8可以最大的支持国际化):windows-》Preferences-》general-》Workspace-》Textfileencodi…

    2022年10月31日
  • php熔断机制,如何保证核心链路稳定性的流控和熔断机制?

    php熔断机制,如何保证核心链路稳定性的流控和熔断机制?仅从设计优化、服务拆分、自动扩容等方面进行优化,有时候并不能完全解决问题。比如,有时流量增长过快,扩容流程还来不及完成,服务器可能就已经抗不住了既然突发流量我们没法预测,业务上也不可能不依赖任何外部服务和资源,那么有什么办法能尽量避免,或者降低出现这些问题时对核心业务的影响呢?流量控制01.流控常用的算法目前业内常用的流控方法有两种:漏桶算法和令牌桶算法漏桶算法“漏桶算法”的主要目的是控制数据注…

    2022年10月30日
  • idea2021激活码在线生成[免费获取]

    (idea2021激活码在线生成)2021最新分享一个能用的的激活码出来,希望能帮到需要激活的朋友。目前这个是能用的,但是用的人多了之后也会失效,会不定时更新的,大家持续关注此网站~https://javaforall.cn/100143.htmlIntelliJ2021最新激活注册码,破解教程可免费永久激活,亲测有效,上面是详细链接哦~ML…

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号