6

私は数か月前にWebアプリを作成し、それがffとchromeで正常に動作することをテストしました。

昨夜何かを追加しに行ったところ、iframeの非表示機能がChromeで機能しなくなっていることに気づきました。

要素を調べると、属性が実際に変更されていることがわかりますが、iframeは非表示になりません。

function hideIFrame(){
    document.getElementById("myFrame").style.visibility="hidden";
    self.focus();
}

function showIFrame(){
    document.getElementById("myFrame").style.visibility="visible";
}

myFramedivは非表示から始まります。正常に表示されますが、表示が非表示に変更された場合、クロムは非表示になりません。ff、つまり非表示のままにします。

なぜですか?

修正:

function hideIFrame(){
    document.getElementById("myFrame").style.visibility="hidden";
    document.getElementById("myFrame").style.opacity=0;
    self.focus();
}

function showIFrame(){
    document.getElementById("myFrame").style.visibility="visible";
    document.getElementById("myFrame").style.opacity=1;
}
4

4 に答える 4

4

iframeの可視性の切り替えに問題があります($('iframe')。css('visibility'、'hidden')がgoogle chromeで機能しません)。消したい場合は、height、width:0を使用してください。単に非表示にしたい場合は、opacity:0を使用します。

于 2012-10-07T08:17:15.530 に答える
1

私はあなたの問題を理解しませんでした。関数を呼び出している場所に、さらにいくつかのコードを投稿する必要があるかもしれません。これは、Chromeでうまく機能するサンプルコードです。

<script type="text/javascript">
function hideIFrame(){
document.getElementById("myFrame").style.visibility="hidden";
self.focus();
}

function showIFrame(){
document.getElementById("myFrame").style.visibility="visible";
}
</script>

<input type="button" onclick="hideIFrame()" value="hide"/>
<input type="button" onclick="showIFrame()" value="show"/>

<iframe id="myFrame">

</iframe>
于 2012-10-07T08:53:14.730 に答える
1

代わりにdisplay.noneを使用してください

    function hideIFrame(){ 
document.getElementById("myFrame").style.display="none";
    self.focus();
}

function showIFrame(){
    document.getElementById("myFrame").style.display="inline";
   //or document.getElementById("myFrame").style.display="block";
}`
于 2020-11-06T08:19:08.360 に答える
0

私の場合、JS onloadを使用して要素を非表示にし、JSを使用して切り替えることができますvisibility="visible"

window.onload = function() {
  document.getElementById("newDiv").style.visibility = "hidden";
}
function showHidden() {
  document.getElementById("newDiv").style.visibility = "visible";
}
于 2018-02-12T07:15:14.743 に答える