绑定加载+同步更改
Jquery: bind load + change simultaneously
在许多情况下,我需要在加载后将行为绑定到元素,然后在事件触发(如"change")之后。我认为最好的方法是在同一行:
$('#element_id').bind('load, change', function () {
...
});
但这只适用于"change"而不适用于"load"。有更好的方法吗?
我也遇到过同样的问题。去掉逗号是不够的,至少在这种情况下是这样:
$(document).ready(function(){
$('#element_id').bind('load change', function () {
... // (this DOESN'T get called on page load)
});
});
我猜load
事件在$(document).ready()
之前触发。
这是一个简单的解决方案:
$(document).ready(function(){
$('#element_id').bind('change', function () {
...
});
$('#element_id').trigger('change');
});
对于已经加载的内容,当你想要在一个事件上运行一个函数时,你可以使用自己命名的自定义事件来避免在内置事件上触发任何来自库等的现有绑定,例如
$(".my-selector").on("change rightnow", function() {
// do stuff...
}).triggerHandler("rightnow");
你不需要去掉逗号吗?
试试不加逗号:
$('#element_id').bind('load change', function () {
...
});
http://api.jquery.com/bind/多个事件
相关文章:
- 是否同步加载了LINK元素
- 使用同步ajax调用加载屏幕
- 脚本和图像是同步加载还是异步加载
- 如何确保angularjs app.js中的同步加载
- 在 ES6 中同步加载其名称在运行时确定的模块
- Javascript 同步加载表文件
- 同步加载JS脚本
- Snap.如何同步加载SVG
- 使用document.write是跨浏览器跨域同步加载脚本的唯一可能方式
- 如何同步加载图像
- 在图像同步加载完成后使用Gridify
- Twitter按钮脚本同步加载,需要异步加载
- 如何在requirejs中声明一个模块已经被同步加载
- 在Javascript中同步加载base64编码的图像
- Javascript中的顺序加载与同步加载
- ES6模块支持同步加载和异步加载
- 同步加载JS变量的最佳方式
- 如何通过userscript /同步加载谷歌地图api
- Javascript:在执行函数之前等待同步加载脚本的最佳方式
- YUI3-如何同步加载模块