ページがあり、ページ内に iframe があります。ディレクトリは次のとおりです。
Folder1
Folder2
IframeCSS
IframeCSS.Css
iframePage1.html
stuff.css
parentPage1.html
iframePage ではIframeCSS.Css
相対リンクを使用して参照しているので、/IframeCss/IframeCSS.Css
アプリケーションの性質上、iframe ページのリンクをハードコードで変更することができません (物理的な iFrame Html ページの変更)。
全体的な目標は、相対リンク ( )を介しiframePage1.html
てIframeCSS.Css
(および他のすべての hrefs/src を)表示することです。href="/IframeCSS/IframeCss.Css"
私が試したことがいくつかあります:
基本パスを Iframe に動的に追加する
ベースはiframeのロード後にのみ追加できるため、リンクがベースが存在しないかのように機能するため、これは失敗しました
HTML を取得するコンテナ Iframe を作成し、Base を追加して、コンテンツを表示された Iframe にコピーします。
上記の理由により、これは失敗しました。このメソッドは、Google Map API の読み込みにも問題を引き起こします。
jqueryを使用してコンテナiframeを調べ、親ルートをすべてのsrcとhrefに追加してURLを変更します
これも失敗しました。
この時点で私が何をすることをお勧めしますか?
(iframe は同じドメインを指し、ユーザーは iframe をナビゲートできる必要があります)
親 HTML:
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<link rel="stylesheet" href="cmsCSS/CmsStyle.css" />
<title></title>
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
<script src="CmsScript.js"></script>
<script src="Insights.js"></script>
</head>
<body id="Dash">
<form id="form1" runat="server">
<div id="topDash">
<img id="something" src="img/logo.png" />
</div>
</form>
<iframe id="dashBody"></iframe>
<iframe id="iframeContainer"></iframe>
</body>
</html>