使用jquery首先隐藏ID时遇到麻烦。我已经设置了$(“#before-show”)。hide();但它仍然会在重新加载后进行查找,然后隐藏。
这是我尝试的示例代码:
org_id parentorgid
A
B A
C A
B1 B
B2 B
C1 C
$(document).ready(function() {
$("#before-show").hide();
$("#show").on('click', function() {
$(".box").fadeIn();
$(".button-show").fadeOut();
});
$("#hide").on('click', function() {
$(".box").fadeOut();
$(".button-show").fadeIn();
});
});
这是可行的,但是在重新加载浏览器后仍然看了3秒钟之后又出现问题。反正是异步函数hide()吗?
注意:请勿使用CSS,因为我没有将ID放入CSS
答案 0 :(得分:0)
如果您希望元素在页面加载时被隐藏,则应将其隐藏在css中,而不是在javascript中隐藏,因为页面是在运行javascript之前呈现的。试试这个:
<style>
#before-show
{
display: none
}
</style>
答案 1 :(得分:0)
仅使用CSS而不是JavaScript对其进行隐藏。
#before-show { display: none; }
$(document).ready(function() {
$("#show").on('click', function() {
$(".box").fadeIn();
$(".button-show").fadeOut();
});
$("#hide").on('click', function() {
$(".box").fadeOut();
$(".button-show").fadeIn();
});
});
#before-show { display: none; }
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div id="show" class="button-show">
<button>show</button>
</div>
<div id="before-show" class="box">
<div class="hello">
<button id="hide">hide</button>
</div>
</div>
答案 2 :(得分:0)
html逐行运行 通常html可以快速运行,但是您可以使用其他网站导入jquery,可以检查F12-> network使用它的匹配时间,也许这会带来问题
此外,
我建议您可以先使用CSS将div设置为隐藏:显示:无
答案 3 :(得分:0)
您可以将要开始的元素隐藏为:
<div id="before-show" class="box" style="display: none;">
<div class="hello">
<button id="hide">hide</button>
</div>
</div>
然后,您可以设置它的ID,然后将其显示为:
$('box')
.css("display", "block")
.attr('id', 'someId');
祝你好运。