是否有任何必须在HTML / JavaScript中使用早期绑定/内联事件属性的情况
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了是否有任何必须在HTML / JavaScript中使用早期绑定/内联事件属性的情况,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1393字,纯文字阅读大概需要2分钟。
内容图文
![是否有任何必须在HTML / JavaScript中使用早期绑定/内联事件属性的情况](/upload/InfoBanner/zyjiaocheng/719/6f30ef6be6534943b11400b149be2f50.jpg)
在我对以下SO问题的回答中:What does event binding mean?,我做了一个传递评论,使用内联JavaScript /早期绑定来绑定JavaScript事件“经常被误导”
例如:
<input id="MyButton" type="button" value="clickme" onlick="Somefunction()" />
我在讨论“后期绑定”方法,其中标记中没有引用JavaScript,我理解这是最佳实践.然而,评论者声称有时需要使用它,我想知道这些可能是什么.
如果没有讨论任何一个的相对优点,任何人都可以想到任何情况要求你使用(例如)onclick属性而不是后期绑定方法.
非常感谢
解决方法:
我认为很多开发人员会因为无知或缺乏知识(这当然是常见的)而这样做,剩下的开发人员会这样做,因为使用HTML-JS属性比后期绑定更方便,如果你知道的话某些对象和功能总是在每个页面上加载,它们只是“在那里”.
当我说HTML来自AJAX回调时,我认为尤其如此.举例说明一个AJAX请求带有HTML响应并且HTML被插入到页面中.现在,天真的开发人员会按照以下思路思考:
>我不知道响应HTML中有哪些元素,所以我不知道我需要添加什么后期绑定.
>也许我需要将它们全部添加以防万一!或者编写一些解析脚本来检测元素并绑定到我找到的元素?
>但是,如果我需要绑定到尚不存在的东西呢?是时候写一些长内联JavaScript了!
所有这些都可以通过使用一种适用于页面上所有当前和未来元素的无所不在的绑定来消除.在jQuery中,等价于live().而不是写:
$('.foo').click(function(){...});
你可以写:
$('.foo').live('click', function(){...});
现在,所有具有类名’foo’的元素将在单击时执行该函数,包括当前不存在的元素.对动态AJAX接口非常有用.
你可能已经知道了,但我只是指出JS属性可以做什么,纯JS可以做得更好,我会考虑最好的做法.
内容总结
以上是互联网集市为您收集整理的是否有任何必须在HTML / JavaScript中使用早期绑定/内联事件属性的情况全部内容,希望文章能够帮你解决是否有任何必须在HTML / JavaScript中使用早期绑定/内联事件属性的情况所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。