2012-01-17 18 views
3

2つの異なる方法でロードするWebページがあります。ユーザはそのリンクをクリックすることができ、同じブラウザウィンドウ内にそのページをロードする。それ以外の場合は、JQuery Dialogで同じページを表示することができ、そのページのコンテンツエリアだけがポップアップウィンドウに表示されます。このページがメインブラウザウィンドウにロードされると、すべてのブラウザ(すべてのバージョン)で正常に動作しますが、ポップアップでロードすると、IE7とIE8のみで混在した警告が表示されます。IE7と8は、ページがJQuery.loadでロードされているときに警告メッセージを表示します。

私は一日中、根本的な原因を探し求めましたが、成功しませんでした。私は以下の投稿に示唆されているすべての修正を試みました:

  1. すべてのリンクは、URLに相対的または明示的にhttps:を持っています。
  2. ブラウザでダウンロードしたリソースに404メッセージはありません。
  3. 私はFiddler trefficを見て、すべてのリクエストはhttpsです。
  4. <script>タグにはsrc="javascript: "属性がありません
  5. 私は背景画像と任意のdiv要素を削除していないです:。。style属性で直接定義されたURLのスタイルを

あなたは私がすべて試してみましたが見ることができるようにオンラインで利用可能の提案/修正が、運と。私はこの点で助けを本当に感謝。

おかげで、 Naveed

+0

マークアップを貼り付けることはできますか? – karim79

+0

Google広告などのものはどうですか? –

+0

Google広告など – Naveed

答えて

1

最終的に、この問題を解決し、根本原因をウェブ上で検索している貧しい人々の解決策を投稿できました。私の場合、これは、何らかの理由で3つの異なるタグ(たとえば)に使用されている無効な「バックグラウンド」属性によって引き起こされました。IE7およびIE8は、これらのページがjqueryダイアログにロードされているときのみ警告します。同じページがブラウザに直接ロードされている場合、警告は表示されませんでした。だから私はまだそれが起こっていた理由については無知です。何人かの専門家がそれがなぜそれのように振る舞っていたかを明らかにすることができるかもしれません。 お返事ありがとうございます。

0

共通犯人はyで参照されるイメージが含まれます私たちのCSS、iframeのURL、およびスクリプトのURL。

あなたはFiddlerでHTTPリクエストが表示されないと言います。おそらくそれは非セキュアなリソースをブロックしているからです。その後、ブラウザに、安全でないリソースをすべて取得して、Fiddlerを監視するように指示します。

3

私はかなりの時間をかけて自分のバージョンを調べています。最終的にIE8モードでIE10を使用していた回答が見つかりました。これは実際のエラーです。同様の問題があり、FiddlerやHttpWatchが実際にHTTPをロードしていないことを保証していることを強くお勧めします。どうやらないこの場合は、

$("head").append('<link href="//example.com/stylesheets/icons" media="screen" rel="stylesheet" type="text/css" />'); 

IE8は、一般的にうまくプロトコル相対URLを処理します。

私にとっての問題は、ヘッドにスタイルシートのリンクを追加するスクリプトであることが判明しました。私は明示的なプロトコルを提供しなければなりませんでした:

$("head").append('<link href="'+window.location.protocol+'//example.com/stylesheets/icons" media="screen" rel="stylesheet" type="text/css" />'); 

醜いですが機能的です。これは誰かが頭痛を救うことを願っています!

関連する問題