1

iframe内にPDFが埋め込まれています。ボタンをクリックすると、このiframeを非表示にする必要があります。しかし、何らかの理由で、iframeセクションはSafariブラウザで非表示になりません。同じコードがIE、Chrome、Firefoxで正常に機能します。

これが私のHTMLページからの抜粋です:

<div id="PDFSection" style="text-align:center;">
    <iframe id="PDFFrame" src="sample.pdf"> Loading...
    </iframe>
    <hr />
    <input id="btnEmail" type="button" value="Email" name="btnEmail"/>
</div>

divを非表示にするために呼び出しているjqueryの部分は次のとおりです。

$(document).ready(function() {
    $( "#btnEmail" ).click(function() {
    $( "#PDFSection" ).hide();
    });
});

私はhide()の代わりにtoggle()を試し、iframe要素自体でhide()を呼び出そうとしました。しかし、PDFオブジェクトを隠すことはできません。jQueryコードを実行すると、PDFSection divが非表示になりますが(ボタンとhr行が非表示になっていることがわかります)、PDFは画面に表示されたままになります。

ボタンをクリックする前後に何が起こるかのスクリーンショットは次のとおりです。 ここに画像の説明を入力してください

4

1 に答える 1

1

私はあなたの例をテストしました:

<html>
  <head>
    <script type="text/javascript" src="http://code.jquery.com/jquery-1.9.1.min.js"></script>
    <script type="text/javascript">
      $(document).ready(function() {
        $( "#btnEmail" ).click(function() {
            $( "#PDFSection" ).hide();
        });
      });
    </script>
  </head>
  <body>
    <div id="PDFSection" style="text-align:center;">
    <iframe id="PDFFrame" src="about:blank"> Loading...
    </iframe>
    <hr />
    <input id="btnEmail" type="button" value="Email" name="btnEmail"/>
</div>
  </body>
</html>

OSX MountainLionのsafari6.0.2(8536.26.17)では正常に動作します。たぶん、開発者コンソールcmd+ alt+を開いて、iさらにエラーメッセージを探す必要があります。

于 2013-02-20T12:59:54.950 に答える