この問題を回避するには、いくつかのオプションがあります。最適なオプションは、Internet Explorer で [スクリプト エラーごとに通知を表示する] 設定を無効にすることです。HTA を実行しているため、HKEY_CURRENT_USER レジストリ設定をプログラムで変更できます (または、手動で 1 回変更するだけです)。
2 番目のアプローチは間違いなくハックですが、IE がタブ ブラウジングを行う前に HTA でタブ ブラウザーを作成したときに、自分で問題を解決した方法です。iframe 内の URL に移動する代わりに、AJAX でコンテンツをリクエストし、window.onerror を選択した関数に設定するスクリプト ブロックを追加します。次に、コンテンツ全体を iframe に挿入します。このアプローチはエラーを飲み込み、必要に応じてエラーを報告するオプションを提供します.
onerror スクリプトを挿入するだけでなく、後続のクリックが ajax インジェクション ハンドラーを介してルーティングされるように、アンカーの事前解析も行う必要があります。基本的に独自のブラウザーを作成し始めるため、これはかなり複雑であることがわかりました。私はまだプロジェクトのソース コードを持っているので、それを bitbucket リポジトリに公開し、私のアプローチを調べてもらいます。
それ以外の場合、最後のオプションは、各サイトの管理者に電子メールを送信し、極度のバグを修正するように指示することです!!!! しかし、そのオプションがうまくいくとは思えません:D
編集:
古いプロジェクトをロードした後、ソリューションが以前よりも実行可能性が低いことがわかりました。x-frame-options ヘッダー ディレクティブは、IE8 以降、google.com が iframe に読み込まれないようにします。そして、なんらかの理由で、window.onerror トラップが iframe のエラーをキャッチしていません (実際にはネストされた iframe の問題である可能性がありますが、実行可能な解決策はありません。)
しかし、エラーダイアログの「今後このメッセージを表示しない」オプションをチェックするオプションがまだありました。これにより、エラー ダイアログが問題の報告を停止し、管理者権限は必要ありませんでした。