2012-02-15 2 views
3

IFRAMEタグにロードされたページ内のすべてのリクエストをブロックする必要があります。 ページは同じドメインにありますが、内側のページでのナビゲーションを防ぐ必要があります。明らかに、内側のページの要素はわかりません。リンク(アンカーリンク)Javascript呼び出し、JQuery呼び出し、Ajax呼び出し、送信などがあります。ここで内部のすべてのリクエストをブロックする方法<iFrame>

たちは、簡単なタグを処理し、標準形式で提出することができる方法です。たとえば

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

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

最初の関数の仕事は良いが、jQueryのにその機能を使用してトリガされた場合には、タグのみですが、動作しません。

標準フォームのサブミットだけで、2番目の作業は正常ですが、Ajaxサブミットはできません。

すべてのイベントを処理する方法はありますか?

+0

はJS/AJAX経由で読み込まれ、このフレームですか? – powtac

答えて

1

わからしかしない:

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

それとも

$('*').unbind('click'); 
$('[href]').attr('href', '') 
はこの興味深い答えを参照してください: Best way to remove an event handler in jQuery?

1

トランスペアレント<div>をiframeと同じ領域にオーバーレイするだけで済みます。 iframeは通常のように読み込まれますが、インタラクトすることはできません。

+1

TAB、TAB、TAB、Enterを押します。今私はそれと対話しました。 – Deestan

+0

@Deestanをクリックすると、クリックしたいリンクに移動するためのタブを維持する必要があります。私はポインティングデバイスを使用している平均的なユーザーがそれを知ることはほとんどできないし、努力したいと思うこともありません。 – T9b

+0

もちろん、アクセスしにくいですが、それはあなたが言ったことではありません。 :)句 "[...あなたはそれと対話できないはずです"]は間違っています。 – Deestan

関連する問題