如何阻止javascript函数从框架内容
How to stop javascript function which is from iframed content?
我正在构建另一个网站。但是他们的页面上有一个javascript函数,我不想在我的页面上执行。这是
if (top.location != location) {
top.location.href = document.location.href; }
我试过了,但是整个页面都停止了。
function StopLoading() {
if (!document.all)
{
window.stop();
}
else
{
window.document.execCommand('Stop');
}
}
<iframe id="i_frame" onload="StopLoading()" src="http://website.com/"></iframe>
我不相信你能做到这一点,由于标准的浏览器安全限制(假设涉及的2个站点在不同的域)。有了这种能力,就有可能发生相当恶劣的事情。你应该把这个网站放在一个框架里吗?
正如我在之前的回答中所说的,只有当您有一个能够返回HTTP/1.1 204 No Content
标头的服务器时才能这样做。如果你有这样的服务器,那么你可以使用这样的代码:
var prevent_bust = 0;
window.onbeforeunload = function (){
prevent_bust++;
};
setInterval(function (){
if (prevent_bust > 0) {
prevent_bust -= 2;
window.top.location = 'http://server-which-responds-with-204.com';
}
}, 1);
这个方法在这里描述。
如果没有204
标头,您可能无法做到这一点。这是有原因的。帧破坏通常用于防止点击劫持,这是非常有害的。
相关文章:
- Mocking console.log()/MOCHA测试框架中的任何其他函数
- 从框架中的函数异步加载 Javascript
- 如果有's是一个名为“”的全局函数;描述“;或“;它“;当使用诸如jasmine或mocha之类的测试框架时
- ionic框架中的app.js函数冲突
- 如何设置用户当前位置以初始化离子框架中的函数
- 如何使用AJAX函数在不刷新页面的情况下发送表单,我缺少什么?我必须为此使用休息框架吗?
- 如何将包含猫鼬函数的方法与控制流框架(例如异步或 Step)一起使用
- JQUERY hover() 函数不适用于其子函数,使用 bootstrap 框架
- 使用离子框架改变全局函数的状态
- 在play框架中从javascript调用java函数
- 从一个框架的页面调用一个javascript函数到另一个框架的页面,给出“权限被拒绝”错误
- Jquery 无冲突 - 点击函数 - 多个框架
- 用javascript调用另一个框架ASP.NET C#函数
- 如何从框架内部检查函数是否存在(从字符串)
- Javascript:在调用之前检查函数是否存在于同级框架中
- Javascript构造函数、原型和实例化.架构和框架
- 播放框架JavaScript函数作为scala模板参数
- 使用Greasemonkey脚本调用框架中的函数
- 将回调函数从任何子框架传递到顶部窗口的最有效方法
- 如何阻止javascript函数从框架内容