現在、IFrameを使用して、ユーザーが生成したコンテンツをWebサイトでサンドボックス化しています。これにより、メインのスタイルシートに関するスタイリングの問題が解消されます。
ただし、ユーザーがリッチテキストエディターを使用してリンクを生成する場合は、IFrameでリンクを開くだけでなく、親でリンクを開く必要があります。親にターゲットを設定することはできますが、ユーザーとユーザーがコンテンツに入力する内容を制御することはできません。
IFrame内のHREFをハイジャックして、それらを変更せずにすべて親をターゲットにする方法はありますか?または、普遍的に注入できるJavascriptを少し使用して、すべてのコンテンツをスクレイプしてターゲットをプログラムで置き換える必要がないようにしますか?
理想的には、1つの場所にある単純なスクリプトが最善の解決策です。
考え?
エンドソリューション
私は選択した答えのバリエーションを使用しました...それは私を正しい方向に導きました。
<script>
Event.observe(window, 'load', function() {
$$('a').each(function(e) {
e.writeAttribute('target', '_parent');
});
});
</script>
これは、コンテンツを含むIFrame内にあります。最終的には、このタスクの最も単純なソリューションになりました。