window.open(‘http://127.0.0.1:5779/onlinePreview?url=’ + encodeURIComponent(this.$Base64.encode(fileUrl)));打开的新的页面如何禁止右键操作详细代码操作
时间: 2024-10-22 13:16:38 浏览: 29
从零学习node.js之搭建http服务器(二)
在JavaScript中,如果你想防止新打开的页面被用户通过右键菜单访问,可以利用`document.addEventListener('contextmenu', function(e) { e.preventDefault(); })`这行代码来阻止默认的右键事件。但是请注意,这并不能完全阻止所有的右键功能,因为一些浏览器可能会有内建的右键快捷菜单,如图片保存、链接复制等。
将这个防右键的部分添加到你之前提到的`window.open`调用后的页面脚本中,你可以这样做:
```javascript
// 创建一个新的窗口并阻止右键
window.open('http://127.0.0.1:5779/onlinePreview?url=' + encodeURIComponent(this.$Base64.encode(fileUrl)), '_blank', 'menubar=0,location=0,directories=0,status=0,toolbar=0,rightclick=off');
// 阻止新页面的右键操作
window.onload = function() {
document.addEventListener('contextmenu', function(e) {
e.preventDefault();
});
};
```
这里的关键在于`rightclick=off`,这是一个自定义的属性,在标准的`window.open`选项中并不常见,它试图阻止所有与右键相关的交互。然而,由于浏览器兼容性和规范限制,这种方法并不是万无一失的,有些现代浏览器可能不受此影响。
阅读全文