2012-09-17 2 views
2

Я реализовал бесконечный свиток, используя ajax и jquery.append(), используя this tutorial. В случае успеха ajax, jquery добавляет десять <li> элементов в <ul>.Почему бесконечный прокрутка с помощью ajax и jquery.append() выдает IE?

Прокрутка работает нормально (может быть быстрее?) В Chrome и Firefox, но после некоторой прокрутки падает IE. Любые предложения о том, как избежать сбоя IE и, возможно, повысить производительность?

<li> элемент содержит следующее:

<div class="post_div" align="left"> 
<div class="separator_div"></div> 
    <table class="post_table" align="left"> 
    <tr><!--header e.g title--> 
    <td class="td_first1"><!--title--> 
     Title 
    </td> 
    <td class="td_second1"><!--blank--> 
    </td> 
    </tr> 

    <tr><!--middle e.g picture--> 
    <td class="td_first2"><!--picture--> 
     <img class="img" id="49130" width="480" height="360" src="pic.jpg"></img> 
    </td> 
      <td class="td_second2"><!--user,text,vote,share--> 
     <div class="user_div"><!--avatar+username--> 
      <img class="uavatar" src="avatar.jpg"></img> 
      <a href="link/user.php?u=2"><span class="user_span">Jon Doe</span></a> 
     </div> 
     <div class="text_div"><!--text--> 
     some text.... 
     </div> 
     <div class="vote_div"><!--vote--> 
     <table align="left" width="220"> 
         3coloumsx2rows table here 
        </table> 
     </div> 
     <div class="share_div"><!--share--> 
     2 iframes here   
     </div> 
    </td> 
    </tr> 

    <tr><!--bottom e.g desc--> 
    <td class="td_first3"><!--desc--> 
    <div class="desc_div"> 
      onother text here.... 
    </div> 
    </td> 
    <td class="td_second3"><!--time+views--> 
    0 views 1 second ago 
    </td> 
    </tr> 
    </table> 
</div> 
+1

http://whathaveyoutried.com? Что такое «крушение»? Остается ли страница работать, или Internet Explorer (приложение) действительно сбой? Можете ли вы разместить сценарий, который динамически загружает элементы? Пожалуйста, добавьте дополнительную информацию. – Flater

ответ

0

Нужно видеть ваш яваскрипта код, а также.

Следует иметь в виду, что IE запускает событие «прокрутки», когда вы прокручиваетесь против других браузеров, которые ждут окончания прокрутки. Результат - то, что вы делаете в событии «scroll», выполняется постоянно, когда вы прокручиваете, поэтому, когда вы говорите, что добавляете 10 LI, вы действительно добавляете 100 секунд за считанные секунды.

Решение этой задачи задает тайм-аут для выполнения запроса ajax на прокрутке. Если пользователь продолжает прокрутку, тайм-аут очищается и сбрасывается. Когда пользователь прекращает прокрутку, тайм-аут завершается и вызывает вашу функцию запроса ajax.

+0

Привет, это мой .js – JTI

+0

Где? Не видя свой javascript где-нибудь? – Mark

+0

Нет ничего плохого в моем JS. Я сделал то, что вы мне предлагаете, и я благодарю вас за это, но у меня все еще была такая же проблема. После этого я заменил бесконечный прокрутки, и я добавил li в ul на событие click (нажмите на какую-то кнопку), и у меня все еще были проблемы с IE , Следующий шаг состоял в том, чтобы удалить facebook и твиттер iframe share (из содержимого li), а производительность улучшает IE, все еще сбой, но после многих прокрутки. Кажется, мне нужно просмотреть содержимое li. – JTI

Смежные вопросы