Div с гарнитурой JS не отображается во всплывающем контенте div - PullRequest
1 голос
/ 10 марта 2010

Я сделал загрузчик jQuery для моего контента div. Однако он не отображает мой div class="typeface" больше. Это означает, что я не могу использовать разные шрифты. Остальная часть содержимого div работает правильно. Кто-нибудь может мне помочь?

Javascript код: (для элементов)

$(document).ready(function() {  

    // Check for hash value in URL  
    var hash = window.location.hash.substr(1);  
    var href = $('#nav li a').each(function(){  
        var href = $(this).attr('href');  
        if(hash==href.substr(0,href.length-5)){  
            var toLoad = hash+'.html #content';  
            $('#content').load(toLoad)  
        }  
    });  

    $('#nav li a').click(function(){  

      var toLoad = $(this).attr('href')+' #content';  
      $('#content').hide('fast',loadContent);  
      $('#load').remove();  
      $('#wrapper').append('<span id="load">LOADING...</span>');  
      $('#load').fadeIn('normal');  
      window.location.hash = $(this).attr('href').substr(0,$(this).attr('href').length-5);  
      function loadContent() {  
       $('#content').load(toLoad,'',showNewContent())  
      }  
      function showNewContent() {  
       $('#content').show('normal',hideLoader());  
      }  
      function hideLoader() {  
       $('#load').fadeOut('normal');  
      }  
      return false;  

    });  
});  

HTML код:

<body> 
<div id="wrapper"> 
    <ul id="nav">
       <li><a href="index.html">welcome</a></li>
    </ul>
      <div id="content">

      <div class="typeface-js" style="font-family: Helvetiker; color:#0182a8;  font-size:25px; margin-bottom:10px;">Mauris ac eros. Donec quis lacus Header text.
      </div>

      Morbi gravida posuere est. Fusce id augue. More content text.

      </div>

</div>

Ответы [ 2 ]

0 голосов
/ 10 марта 2010

.load очистит все содержимое целевого элемента контейнера (например: "#content")

<div id="content"> .... cleared ..... </div>

поскольку ваш элемент "typeface-js" содержится в div содержимого, он очищается после завершения загрузки.

0 голосов
/ 10 марта 2010

Вы загружаете что-то полностью через div "#content", поэтому, конечно, div "typeface-js" исчезнет (если только то, что вы загружаете с ним, также не содержит этого). Ты видишь? Когда вы звоните

$('#content').load( ... )

тогда все, что было в этом <div> до того, исчезнет.

...