javascript - 当用户参加测验时,如何停止使用 javascript 或 jquery 打开其他浏览器或选项卡?

标签 javascript jquery ruby-on-rails

我的 Rails 应用程序中有一个测验模块。在这里我可以创建一个测验并将其分配给用户。将测验分配给用户后,他们将收到一封电子邮件,其中包含打开该测验的链接。到这里就很好了。现在我想实现一个功能,通过该功能我想阻止用户打开其他浏览器或用户当前正在进行测试的当前浏览器的选项卡。因此,通过使用此功能,我想限制用户在参加测试时在互联网上搜索答案。但不知道如何用javascript或jquery实现它。

最佳答案

网页不可能阻止用户在浏览器中打开新窗口/选项卡。不过,您可以使用 window 对象上的 blur 事件监听器来检查用户是否导航离开您的页面。

window.addEventListener("blur", function () {
    // window has lost focus
});

尽管您永远无法确定用户做了什么 - 他们可能已经切换了应用程序,或者弹出窗口可能窃取了窗口的焦点。

关于javascript - 当用户参加测验时,如何停止使用 javascript 或 jquery 打开其他浏览器或选项卡?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35982026/

相关文章:

javascript - 如何使用 Jest 测试函数中的函数

ruby-on-rails - rails 3 : How do I create options in a <select> tag from rows in a database table?

javascript - xdsoft 的日期时间选择器显示不正确的时间选项

javascript - 如何将现有网站更改为 Bootstrap

java - 将 <div> 数据传递给 servlet (ACE - EDITOR)

javascript - 深度链接无限滚动页面

javascript - 当鼠标移动到带有jquery的文本上时显示图片?

javascript - HTML Accordion 填充

javascript - 观察新 DOM 节点的插入并调用它们的方法

ruby-on-rails - Ruby 链接到 home#index _path