我想知道他们是否可以选择调用已分配给JQuery事件的函数。
例如:
$("#somediv").change(function() { //do something });
我希望能够手动调用最初分配给“somediv”元素的函数。
感谢。
答案 0 :(得分:19)
你试过这个吗?
$("#somediv").change();
答案 1 :(得分:18)
使用trigger:
$("#somediv").trigger("change");
答案 2 :(得分:3)
JQuery可以触发给定的事件;只需致电$("#somediv").change()
。
答案 3 :(得分:1)
我认为你打算做的是定义变更之外的函数(..)。
function whatever() { // do something }
$("#somediv").change(whatever);
然后你可以在其他地方调用你的功能。
至少我是如何解释你的问题的。
答案 4 :(得分:1)
实现此目的的一种简单方法是将“实际”函数放在Jquery调用之外。所以,你的代码看起来像:
$("#somediv").change(function() { doSomething(); });
var doSomething = function() {
// actually do something
}
这样可以很容易地在脚本中的任何地方调用doSomething函数表单。
答案 5 :(得分:1)
如果您不想实际触发更改事件(如上面的上述答案中所示),您应该将该功能提取到可以从多个位置调用的内容中。看起来您已经找到了一个可以在您的应用程序中重用的地方,并且提取它可能是最好的答案。
答案 6 :(得分:1)
<script type="text/javascript">
window.onload = function () {
$("#somediv").change();
}
</script>
我认为这是您想要做的。