我在2个不同的事件中使用函数main()
时遇到问题。第一件事是:
$buttonStart.on('click', main);
在第二次活动中,我还需要做其他事情,所以它是这样的:
$buttonDelay.on('click', function () {
otherFunction();
main();
});
main()
函数最后使用了jQuery函数:
$(this).ripple(100);
所以,问题在于,在第一种情况下它完美地工作,而在第二种情况下,它说:
未捕获的TypeError:无法读取属性' defaultView'未定义的
我不知道如何解决这个问题,以及为什么它的行为方式不同。
感谢您的帮助。
答案 0 :(得分:4)
您可以使用Function.prototype.call()
将this
设置为$buttonDelay
otherFunction
,main
,您也可以将事件对象作为第二个参数传递给函数到.call()
$buttonDelay.on("click", function (event) {
otherFunction.call(this, event);
main.call(this, event);
});