2013-11-02 62 views
0
$(".induction-group").bind("DOMSubtreeModified", function(event) { 
    $(this).trigger("currentPosition", function(page) { 
     number_of_claims = $(this).find(".claim").length; 
      element = $(this).find('.induction-claim-counter').first(); 
      element.html("Example # " + (page+1) + "/" + number_of_claims); 
    }); 
}); 

該工程確定在鉻,但完全凍結Firefox和IEjQuery文檔()函數太慢

柳炳祥李海林基含量

<div class="row claim-depth-<%#= claim.depth - root_claim.depth %>"> 
<div class="claim"> 
    <div class="claim-id"> <%= claim.id %> </div> 
    <div class="col-xs-1 claim-icon"> 
     <span class="glyphicon glyphicon-align-justify"></span> 
    </div> 

    <div class="col-xs-6 claim-text hidden-sm hidden-xs induction-claim-text"> 
      <div class="induction-background-1"></div> 
      <div class="induction-background-2"></div> 
      <div class="induction-background-3"></div> 
      <div class="prev-claim"> 
       <span class="glyphicon glyphicon-arrow-left"> 
      </div> 
      <div class="next-claim"> 
       <span class="glyphicon glyphicon-arrow-right"> 
      </div> 
      <div class="induction-claim-counter"> <-- !!!!!!! --> 
      </div> 
      <%= claim.text %> 
    </div> 
............... 

文本()和Val()函數唐根本不工作。 任何想法?

回答

1

您可能正在創建競爭條件....因爲您正在修改監視DOM更改的事件處理程序中的DOM。也許你爲什麼使用它

閱讀紅色disclimer在MDN Docs

Be very careful with this event it is easy to cause an infinite loop if you decide to change the DOM inside the event handler.

+0

感謝你可能會,如果你解釋得到的替代品,至少現在我知道的一個問題。我有一個旋轉木馬,每次幻燈片更改時都需要更新頁面計數器。 – DarkSun

+0

難道你不能在更改幻燈片的代碼中執行此操作嗎? – charlietfl

+0

我使用的是caroufredSel插件,它似乎沒有這個事件。 – DarkSun

0

也許jquerys .append()? 我不是100%確定