如何阻止<iframe> </iframe>中的所有请求

时间:2012-02-15 14:47:54

标签: javascript iframe

我们需要阻止在IFRAME标记中加载的页面内的所有请求。 该页面位于同一个域中,但我们需要阻止内页中的导航。 显然,我们不知道内页中的元素。它们可能是链接(锚链接)Javascript调用,JQuery调用,Ajax调用,From提交等。

以下是我们处理简单标签和表单标准提交的方式:

$('a').click(function (event) {
    event.preventDefault();
    return false;
});

$(this).submit(function (event) {
    event.preventDefault();
    return false;
});

例如,第一个函数工作正常,但它只是一个标记,但如果使用JQuery触发该函数不起作用。

第二项工作仅适用于标准表单提交,但不适用于Ajax提交。

有没有办法处理所有事件?

2 个答案:

答案 0 :(得分:1)

您可以简单地将透明<div>覆盖在与iframe相同的区域上。 iframe将正常加载,但您无法与其进行交互。

答案 1 :(得分:1)

不确定但是:

$(document).click(function(event){
    event.preventDefault();
});

或者

$('*').unbind('click');
$('[href]').attr('href', '')

看到这个有趣的答案:Best way to remove an event handler in jQuery?