在页面加载后分离后重新附加标签内容

时间:2016-01-25 16:48:07

标签: javascript jquery

我想在pageload上分离一些标签内容。我没有权限编辑现有的标签脚本btw。我只能在加载标签后添加jquery。

我已经成功地做到了......

 $(document).ready ( function(){ 
  $('#tabcontent1,#tabcontent2,#tabcontent3,#tabcontent4').detach();
 });

但是我试图根据需要重新附加它们,这是HTML

<div id="hometabs">
 <ul id="tabs">      
  <li class="" id="tab0" title="" onclick="javascript:show_tab('0');"><a>Tab0</a></li>      
  <li class="" id="tab1" title="" onclick="javascript:show_tab('1');"><a>Tab1</a></li>      
  <li class="" id="tab2" title="" onclick="javascript:show_tab('2');"><a>Tab2</a></li>      
  <li class="" id="tab3" title="" onclick="javascript:show_tab('3');"><a>Tab3</a></li>      
  <li class="" id="tab4" title="" onclick="javascript:show_tab('4');"><a>Tab4</a></li>
 </ul>    
</div>


<div style="" id="tabcontent0" class="homepagetabcontent">CONTENT</div>
<div style="" id="tabcontent1" class="homepagetabcontent">CONTENT</div>
<div style="" id="tabcontent2" class="homepagetabcontent">CONTENT</div>
<div style="" id="tabcontent3" class="homepagetabcontent">CONTENT</div>
<div style="" id="tabcontent4" class="homepagetabcontent">CONTENT</div>

当我点击Tab1时,我想添加回#tabcontent1,然后点击Tab2并重新附上#tabcontent2等等......阅读一些内容,尝试了一些事情,但避难所&#39得到了任何工作.TIA

这是show_tab函数,我无权访问alter

function show_tab (tab_id) {

   var done = false;
   var counter = 0;
   while (! done) {
      var this_tab_content = document.getElementById("tabcontent" + counter);
      var this_tab = document.getElementById("tab" + counter);
      if (! this_tab_content) {
         done = true;
      } else {
         if (counter == tab_id) {
            this_tab_content.style.display = '';
            this_tab.className = "currenttab";
         } else {
            this_tab_content.style.display = 'none';
            this_tab.className = "";
         }
      }
      counter++;
   }
   location.hash = tab_id;
}

1 个答案:

答案 0 :(得分:0)

我能够让这个工作

   var mfltab1 = $('#tabcontent1 #homepagecolumns').detach();
    $('li#tab1').one('click',function(){
       $('#tabcontent1').append(mfltab1);
    });