2016-11-21 155 views
-4

嘿,我可以隱藏我的div,但我的問題是,如果我重新加載我的網頁,我總是看到隱藏的div一秒鐘。Javascript隱藏DIV HTML

有人知道如何解決這個問題嗎?

+9

分享您的代碼 – brk

+1

你想查看你的答案並接受其中的一個? –

回答

4

要解決此類問題,您需要將<div>的屬性hidden或某些內聯屬性。然後你需要用JS隱藏它,並刪除內聯的東西。

$(function() { 
 
    $(".hide").hide().removeClass("hide"); 
 
});
.hide {display: none;}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div class="hide">I am not shown</div>

方法2:使用hidden屬性。

$(function() { 
 
    $(".hide").hide().removeAttr("hidden"); 
 
});
.hide {display: none;}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div hidden>I am not shown</div>

方法3:使用hidden屬性和.prop()

$(function() { 
 
    $(".hide").hide().prop("hidden", false); 
 
});
.hide {display: none;}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<div hidden>I am not shown</div>

+3

我喜歡你在一個片段中把它變成這樣的事實,所以我們什麼都看不到 – Ivaro18

+0

@ Ivaro18哈哈哈......邪惡的微笑。 –

1

在此,您對DIV的CSS,添加:

display:none; 

所以在div將被加載但不可見。當你需要給你,你可以做你現在正在做

0

隱藏屬性只是添加到您的DIV,它應該解決您的問題,那麼,當你想要顯示它

0

$(document).ready(function() { 
 
    $('#myDiv').hide(); 
 
});
<head> 
 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script> 
 
</head> 
 
<body> 
 
    <div id="myDiv"><p>hello</p></div> 
 
    </body>
由JavaScript刪除

是的,你可以通過javascript創建div。

var div = document.createElement("Div"); 
 
var text = document.createTextNode("this is my Div") 
 
div.appendChild(text); 
 
document.body.appendChild(div);
<body> 
 
    </body>

+0

不!沒有答案。 –

+1

除非需要,否則不應使用客戶端Javascript創建DOM元素;特別是當解決方案像一行CSS那樣簡單時更是如此。 – chrBrd

+0

據我所知,任何時候JavaScript會運行,你會看到div.Until你隱藏它。 –