javascript - 带有重新加载的 jquery 单击事件

标签 javascript jquery

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

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

触发非法调用

还有这段代码:

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

工作正常。

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

最佳答案

reload() 引用了 this。在工作示例中,this 指向 window.location。在您尝试的较短版本中,this 指向 window

这会起作用:

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

这里,window.location 被绑定(bind)为 reload() 的上下文。

关于javascript - 带有重新加载的 jquery 单击事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50075820/

相关文章:

javascript - 将页面标题保存在变量中,以便在发布后可以访问

jquery - 在Rails中使用form_tag的 'remote'时如何自定义ajax调用?

javascript - 在 jQuery 中是否有任何类似于 ('click' 的复选框启用事件的方法?

javascript - 如何从另一个js文件中的另一个函数调用js文件中的函数

javascript - Ember-bootstrap 从 javascript 触发模式

javascript - 在 bootstrap 中,.pull-right 用于右对齐,.pull-left 用于左对齐,然后什么用于居中?

javascript - ResponsiveVoice.js - 绕过 iOS TTS 需要直接用户交互

javascript - ie8 上的 Jquery 脚本错误

javascript - .length 仅在 setTimeout 之后未定义

javascript - 日期范围选择器 - 24 小时范围选择