我想知道为什么这段代码:
$('.button').click(window.location.reload)
触发非法调用
这段代码:
$('.button').click(function(){
window.location.reload()
})
工作正常。
我不知道差异,为什么只有后者有效?
答案 0 :(得分:1)
reload()
引用this
。在工作示例中,this
指向window.location
。在您尝试的较短版本中,this
指向window
。
这将有效:
$('.button').click(window.location.reload.bind(window.location));
此处,window.location
必须充当reload()
的上下文。