jQuery如何在不触发事件的情况下调用事件函数
我有一个jQuery函数,如下所示。无论触发事件是否发生,我都希望在javascript中调用该函数。换句话说,在某些情况下,我只想调用下面的函数。可能吗jQuery如何在不触发事件的情况下调用事件函数,jquery,function,call,onchange,Jquery,Function,Call,Onchange,我有一个jQuery函数,如下所示。无论触发事件是否发生,我都希望在javascript中调用该函数。换句话说,在某些情况下,我只想调用下面的函数。可能吗 $(document).on('change', '.jq__pAC', function(event) { // some working code }); // end .on('change') 只需使用change();在不传递函数的情况下,此方法会触发操作,而不是处理它: $(document).on('change', '.
$(document).on('change', '.jq__pAC', function(event) {
// some working code
}); // end .on('change')
只需使用change()
;在不传递函数的情况下,此方法会触发操作,而不是处理它:
$(document).on('change', '.jq__pAC', function(event) {
// some working code
}).change();
或者,您可以使用trigger()
,它触发作为字符串传递给方法的事件:
$(document).on('change', '.jq__pAC', function(event) {
// some working code
}).trigger('change');
参考资料:
分开,如下所示:
$(document).on('change', '.jq__pAC', handlerFunction);
function handlerFunction(event) {
// some working code
}
// at some other point in your code you can call:
handlerFunction();
PS:为了完成起见,我建议您在on
方法中提取事件
变量,并仅将适当的信息传递给handlerFunction
。像这样:
$(document).on('change', '.jq__pAC', function(event) {
var nodename = event.target.nodeName;
handlerFunction(nodename);
});
function handlerFunction(nodename) {
// some working code
}
// at some other point in your code you can call:
handlerFunction('div');
最好的方法如下:
function myFunction(event)
{
// code stuff here
}
...
$(document).on('change', '.jq_pAc', myFunction);
通过这种方式,您可以自行调用函数,它也会被更改事件调用。因此,在测试和处理更改事件几分钟后,我注意到这只对输入元素有效
$(document).on('change', '.myCart-val', function(){
if ($('.myCart-val').html() == "0") {
$('.myCart-val').hide();
} else {
$('.myCart-val').show();
}
});
我注意到,为了使这个函数真正起作用,我需要将它应用到某种类型的onclick事件中,这两个事件需要相互欣赏
我终于找到了一个更好的解决方案,包括。突变事件允许我的函数在被另一个函数触发时相应地运行
我的最终解决方案
if ($('.myCount').text() == "0"){$('.CartCount').hide();}
$('.myCart-val').on('DOMSubtreeModified', function() {
if ($(this).text() == "0") {
$(this).hide();
} else {
$(this).show();
}
});
我找到了我的答案,希望它能帮助你谢谢@BardMorgan——有时候你只是在代码上花了太多时间,然后迷失在其中。我需要一个全新的视角。谢谢@Steve——有时候你只是花了太多时间在代码上,然后迷失在其中。我需要一个全新的视角。谢谢@DavidThomas——有时候你只是花了太多时间在代码上,然后迷失在其中。我需要一个新的视角。