这是代码:


 < link rel =“stylesheet”href =“https://maxcdn.bootstrapcdn.com/bootstrap/3.3 0.7 / CSS / bootstrap.min.css“> 
< script src =“https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js”>< / script> 
< script src =“https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js”>< / script> 
< div style =“text-align:justify”> [简介文字]< / div> &LT峰; br> &LT峰; br> 
< ul class =“nav nav-tabs”> 
 < li class =“active”>
 < a data-toggle =“tab”href =“#Vspoiler”id =“defaultOpen”onclick =“openPage('Vspoiler')”> Vulgate版本< / a>
 < /锂> 
 <李>
 < a data-toggle =“tab”href =“#Cspoiler”onclick =“openPage('Cspoiler')”> Campbell版< / a>
 < /锂> 
< / UL> 
< div id =“Vspoiler”class =“tab-pane tabcontent active”>< br> 
 <表>
 < TBODY>
 < TR>
 < TD>
 < div class =“column”style =“padding-left:80px”> [标签1的第1栏的内容]< / div>
 < / TD>
 < TD>
 < div class =“column”style =“padding-left:80px”> [标签2的第2栏的内容]< / div>
 < / TD>
 < / TR>
 < / tbody的>
 < /表>
< / DIV> 
< div id =“Cspoiler”class =“tab-pane tabcontent”>< br> 
 <表>
 < TBODY>
 < TR>
 < TD>
 < div class =“column”style =“padding-left:80px”> [标签2的第1栏的内容]< / div>
 < / TD>
 < TD>
 < div class =“column”style =“padding-left:80px”> [标签2的第2栏的内容]< / div>
 < / TD>
 < / TR>
 < / tbody的>
 < /表>
< / DIV> 
<脚本> 

 function openPage(pageName){
 var i,tabcontent; 
 tabcontent = document.getElementsByClassName(“tabcontent”); 
 for(i = 0; i< tabcontent.length; i ++){
 tabcontent [i] .style.display =“none”; 
 

 document.getElementById(pageName).style.display =“block”; 
 }

的document.getElementById( “defaultOpen”)点击()。 

< / script>



 在上面的代码中,最后有一个元素。如果它留在那里,输出是所希望的。如果移到顶部,则输出会发生变化,因为加载时会显示所有 tabcontents
窗格的内容(或称为它们的最佳术语),并且仅在单击非活动选项卡时显示做其他人的内容(在这种情况下是1,但如果总共超过2,则为其他任何内容)消失。为什么会发生这种情况?
注意:这是对此的后续行动,代码主要由@Bradley回答。
&#xA ;答案 0 :(得分:0)
之所以发生这种情况,是因为script
之前的document
运行ready
。 ( 同步 )。
如果您希望将script
保留在body
的开头或头部,请使用de window.onload
功能。
window.onload = function()
{
// your code goes here
}
我的建议是将
script
放在身体的尽头bootstrap
和jquery
库,因为这些脚本将被触发 在DOM准备好之后。