0

ボタン要素を持つレガシーjspページがあります。フレームセット/フレームを使用しています。このボタンをクリックすると、parent.u8() 関数が呼び出されます。しかし、ボタンをクリックするとすぐに、以下のエラーが発生します

Error: Permission denied to access property 'u8'
parent.u8()

その大きなjsp。だから私はここに完全なコンテンツを貼り付けたくありません。サーバーで生成されたhtmlページから最小限のhtmlマークアップを取得しようとし、同様の構造のhtmlページを作成しましたが、実際のアプリケーションでは機能しません。

参考までに、iframe要素も1つありますが、それはボタンが存在するフレームではなく、別のフレームに完全に横たわっています(そのため、iframeに関連する何かが私には暗いように見える可能性があります)。u8 関数はトップ ヘッド タグ内にあります。皆さん、実際のマークアップなしで何が正確な理由であるかを判断するのは難しいことを知っていますが、おそらく、この種の例外がいつ発生する可能性があるかについて、考えられる理由について私を助けることができます Permission denied to access property

アップデート:-

これは以前は機能していました。フレームの 1 つで tinymce(WYSIWYG) エディターを使用し始めたときに問題が発生しました。いずれかのフレームの本体内で生成されたコードの下に貼り付けます。役立つかも

<span id="bodyTest_parent" class="mceEditor defaultSkin" role="application" aria-labelledby="bodyTest_voice">
<span id="bodyTest_voice" class="mceVoiceLabel" style="display:none;">Rich Text Area</span>
<table id="bodyTest_tbl" class="mceLayout" cellspacing="0" cellpadding="0" role="presentation" style="width: 100%; height: 323px;">
<tbody>
<tr class="mceFirst mceLast">
<td class="mceIframeContainer mceFirst mceLast">
<iframe id="bodyTest_ifr" frameborder="0" src="javascript:""" allowtransparency="true" title="Rich Text AreaPress ALT-F10 for toolbar. Press ALT-0 for help" style="width: 100%; height: 323px; display: block;">
<!DOCTYPE >
<html>
<head xmlns="http://www.w3.org/1999/xhtml">
<body id="tinymce" class="mceContentBody " onload="window.parent.tinyMCE.get('bodyTest').onLoad.dispatch();" spellcheck="false" dir="ltr">
<p>
<span color="blue" data-mce-style="color: blue;" style="color: blue;">
<strong>adain</strong>
</span>
4

1 に答える 1

2

これは通常、異なるオリジン (ドメインなど) に存在するフレームが原因です。セキュリティ上の理由から、JavaScript は異なるオリジンからのデータにアクセスできません。

于 2012-12-26T14:41:11.247 に答える