2015-08-27 16 views
6
<header class="mdl-layout__header"> 
    <div class="mdl-layout__header-row"> 

     <!-- Navigation --> 
     <nav class="mdl-navigation"> 
      <a class="mdl-navigation__link is-active" href="/">link</a> 
      <a class="mdl-navigation__link is-active" href="/">link</a> 
     </nav> 
    </div> 
</header> 
<div class="mdl-layout__drawer"> 
    <nav class="mdl-navigation"> 
     <a class="mdl-navigation__link is-active" href="/">link</a> 
     <a class="mdl-navigation__link is-active" href="/">link</a> 
    </nav> 
</div> 

<!-- Colored FAB button with ripple --> 
<button class="mdl-button mdl-js-button mdl-button--fab mdl-js-ripple-effect mdl-button--colored"> 
    <i class="material-icons">add</i> 
</button> 

Zgodnie z http://mdlhut.com/2015/07/where-is-the-mdl-drawer-icon/ powinien działać tak długo, jak nazywam componentHandler.upgradeDom() po dynamicznym załadowaniu html. Aby upewnić się, że dzwonię do aktualizacji upgradeDom, dodałem przycisk, aby sprawdzić, czy dodano efekt marszczenia. Przycisk jest aktualizowany, ale ikona hamburgera nie pojawia się.ikona hamburgera nie wyświetla się, nawet jeśli zadzwonię do componentHandler.upgradeDom();

Jeśli dodaję html, pojawi się ikona hamburgera.

+0

Widziałeś jeśli ma być może źle css stylizacji jak kolor biały? –

+0

Wywołanie funkcji upgradeDom() brzmi jak włamanie. Jakie jest prawdziwe rozwiązanie? – IcedDante

Odpowiedz

0

Ponieważ ładujesz dynamicznie html, po uruchomieniu DOM uruchom następującą funkcję wewnątrz init. Zauważ, że funkcja setInterval celu zapewnienia DOM ma wystarczająco dużo czasu, aby załadować przed wykonaniem metody componentHandler

jQuery

$(document).ready(function() { 
     setInterval(function() { 
      componentHandler.upgradeAllRegisteredElements(); 
     }, 1000); 
}); 

DOM API

document.addEventListener('DOMContentLoaded', function() { 
     setInterval(function() { 
      componentHandler.upgradeAllRegisteredElements(); 
     }, 1000); 
}); 
+0

Cześć, już wypróbowany z setInterval i dom gotowy. Przycisk jest uaktualniany, więc jakoś myślę, że to działa. Po prostu nie wiem, dlaczego ikona hamburgera się nie pojawia. – Sathees

Powiązane problemy