2015-05-09 87 views
0

我遇到的問題是,我只想要顯示已被點擊的頁面,發生了什麼是如果我點擊(#儀表板),然後稍後(#統計),內容重疊..顯示和加載一次

如何防止內容之間的重疊?我想要的是,如果我點擊(#統計),然後(#儀表板)和(#日誌)必須閒置。

 <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1"> 
       <ul class="nav navbar-nav"> 
       <li><a id = "DataOne"><span class="glyphicon glyphicon-home" style="font-size:25px;" aria-hidden="true"></span></a></li> 
       <li><a id = "DataTwo"><span class="glyphicon glyphicon-list-alt" style="font-size:25px;" aria-hidden="true"></span></a></li> 
       <li><a id = "DataThree"><span class="glyphicon glyphicon-stats" style="font-size:25px;" aria-hidden="true"></span></a></li> 
       </ul> 
      </div> 
      </div> 
     </nav> 

<script type="text/javascript"> 

     $('a#dashboard').on('click',function(){ 
      $("#page1").load("page1.html"); 
     }); 

     $('a#log').on('click',function(){ 
      $("#page2").load("page2.html"); 
     }); 

     $('a#stats').on('click',function(){ 
      $("#page3").load("page3.html"); 
     });     

</script> 

@Lelio Faieta,這是三個div的HTML中,我已經把下面page1.html的內容。 的index.html

  ...... 
     <script> 
      $(function(){ 
      $("#TopMenu").load("TopNavigationBar.html"); 
      }); 
     </script> 
    </head> 
    <body> 
      <div id="TopMenu"></div> 
      <div id="page1"></div> 
      <div id="page2"></div> 
      <div id="page3"></div> 
    </body> 

page1.html

<script type="text/javascript"> 
    $("#dashboard").load("dashi.html"); 
</script> 

<div> 
     <div id="dashboard"></div> 
</div> 

回答

0

加載內容前添加一個公共類,所有三個div的空所有的人。所以:

$('a#dashboard').on('click',function(){ 
    $('.pages').empty(); 
    $("#page1").load("page1.html"); 
}); 
$('a#log').on('click',function(){ 
    $('.pages').empty(); 
    $("#page2").load("page2.html"); 
}); 

$('a#stats').on('click',function(){ 
    $('.pages').empty(); 
    $("#page3").load("page3.html"); 
});     
+0

我測試過這個,但是當我交替的時候內容仍然存在......很奇怪。 –

+0

你給了#page1課程頁面等等其他的?你還可以向我們展示三個div的html嗎?此外:你爲什麼使用委託事件?後來將div附加到DOM上了嗎? –

+0

我在第一篇文章中添加了更多信息,請看看它。 –