仅使用 javascript 是不可能做到http://www.hidemyass.com/正在做的事情,因为 javascript 是客户端。该站点可能充当服务器代理......几乎,这意味着它需要服务器端通信(可能)。(可能是他们要钱的原因,因为他们处理流量)您可能需要 AJAX 来执行此操作,这需要服务器能够不受限制地处理和访问其他服务器。任何免费服务器都不会轻易做到这一点,并且通常对他们跟踪通信的服务器有策略。所以你很可能不得不付钱给别人,如果你还没有付钱的话。如果只有你,这很便宜,但流量越多越贵。
也就是说,您可以查看沙盒模式是否适合您。
<iframe sandbox><iframe>
要重新启用功能,请将它们添加到沙盒 pramiters
- (无值) - - - - - - - - - - - - - - -应用所有限制
- allow-forms - - - - - - - - - - - - - 重新启用表单提交
- allow-pointer-lock - - - - - - - - - - 重新启用 API
- allow-popups - - - - - - - - - - - - 重新启用弹出窗口
- allow-same-origin - - - - - - - - - -允许将 iframe 内容视为来自同一来源
- allow-scripts - - - - - - - - - - - - 重新启用脚本
- allow-top-navigation - - - - - - - - 允许 iframe 内容导航其顶级浏览上下文
资料来源:w3schools
<iframe sandbox="allow-forms"><iframe>
如果这不满足,请使用onclick
和onchange
事件来阻止用户交互。带有可点击元素或移动到其他页面。
<iframe onchange="function(){\
document.getElementsByTagName("iframe"[0].src =\
"http://facebook.com");\
}"></iframe>
或某种 onclick 阻止默认值。
首先它不安全,所以为什么要停在那里。
访问iframe.contentDocument
并搜索并删除所有<a
...</a>
标签或您想要的标签。您可以查找某种删除子方法来执行此操作。如果你想更精明,你可以比较href,看看它是否属于外国网站。