每次检测到任何更改时调用函数`.change()`
calling function each time any change is detected `.change()`
我的页面上有很多元素。它们绑定到更改事件。我认为有这样30个要素。
其中之一:
$("#set-angle").change(function(){
//...do stuff
});
现在,每当对任何元素调用任何此类.change()时,我都想调用globalChangeFunc
。我知道这是可能的。我在Backbone
中使用过它。但要在JQuery中检测到相同的情况。
主干的小片段:
// Removes just the `onChange` callback.
object.off("change", onChange);
// Removes all "change" callbacks.
object.off("change");
// Removes the `onChange` callback for all events.
object.off(null, onChange);
// Removes all callbacks for `context` for all events.
object.off(null, null, context);
// Removes all callbacks on `object`.
object.off();
类似的东西。
尝试
$("#set-angle").change(globalChangeFunc);
为您想要更改事件的所有元素分配一个类。
$(".change_me").change(globalChangeFunc);
如果没有更多信息,我能想到的最通用的解决方案是:
$(document).on('change', 'input, select, textarea', function(){
globalChangeFunc();
});
您可以将css类分配给所有元素(#set-angle
元素也将具有.x
类),如:
$(".x").change(function(){
globalChangeFunc();
//...do stuff
});
不要使用id(不要告诉我你会分配30个不同的id),而是分配一个公共类$(这个)可以解决你所有的烦恼。
我假设您必须只为正在发生更改的元素分配一个函数。
$.fn.globalChangeFunc= function(){
//some code
};
$(document).on('change','.class',function(){
$(this).globalChangeFunc();
});
如果是通用功能,即不适用于特定元素:
function globalChangeFunc(){...}
$(document).on('change','.class',function(){
globalChangeFunc();
});
更新:
给你的滑块四个id。在点击时检测那些,并通过将参数传递到公共函数来采取行动。
$(document).on('change', '.class', function () {
switch ($(this).attr('id')) {
case 'up':
$(this).globalChangeFunc(appropriate params);
break;
case 'down':
$(this).globalChangeFunc(appropriate params);
break;
case 'right':
$(this).globalChangeFunc(appropriate params);
break;
case 'left':
$(this).globalChangeFunc(appropriate params);
break;
}
});
相关文章:
- 如何通过JQuery触发JS原生甚至addEventListener(“change”,函数)
- 试图在change上激发多个函数
- 在on.change事件之后运行函数
- 每次检测到任何更改时调用函数`.change()`
- 为什么change函数内部的全局json对象为null
- change函数中的Javascript更改if语句
- 如何在AngularJS ng-click(或ng-change,..)中调用服务函数
- Kendo dropDrownlist 没有在 change() 函数上被触发
- 当 ng-change 事件发生时,函数不会在角度 js 中调用
- jQuery .change 函数只工作一次
- 使用 .change() 函数在复选框更改时自动提交表单
- .change 函数在 for 循环中
- .change() 函数不起作用
- 运行位于jquery .on('change')内部的函数
- 在angularjs ng-change=“chk(query)”中,当键入单词后点击空格时调用函数
- 复选框中的触发函数已选中,不使用 .change()
- jQuery $.change 函数不适用于克隆的选择
- JavaScript on change 函数工作得不好
- 警报没有't在on change函数内触发
- JQuery:change(函数()中存在多个条件