首页 > 解决方案 > 带有重新加载的jquery单击事件

问题描述

我想知道为什么这段代码:

$('.button').click(window.location.reload)

触发非法调用

这段代码:

$('.button').click(function(){
    window.location.reload()
})

工作正常。

我不知道区别,为什么只有后者有效?

标签: javascriptjquery

解决方案


reload()参考资料this。在工作示例中,this指向window.location。在您尝试过的较短版本中,this指向window.

这将起作用:

$('.button').click(window.location.reload.bind(window.location));

在这里,window.location势必充当reload()s 上下文。


推荐阅读