С помощью ajax вставить html в указанную позицию

#javascript #ajax

#javascript #ajax

Вопрос:

Когда прокрутка уменьшается на 30% или когда достигается определенная позиция, вы хотите вставить html-документ в указанное место.

Ниже приведен ajax, который запускается, когда прокрутка составляет около 30%, и html, который нужно вставить.

HTML

 <!-- Number 1 -->
    <div class="anyDiv off" data-ajax="/html/ajax/number_1.html"></div>
<!-- //Number 1 -->

<!-- Number 2 -->
    <div class="anyDiv off" data-ajax="/html/ajax/number_2.html"></div>
<!-- //Number 2 -->
 

javascript

 $(function(){
  $(window).scroll(function(e){
    var bodyHeight = $('body').height();
    var scrollTop = $(this).scrollTop() $(window).height();
    var per = Math.ceil((scrollTop/bodyHeight)*100);

    if( per >= 30 ){
      $('.anyDiv.off').each(function(){
        var pop_ax = $(this);
        var load_url = $(this).data('ajax');

        $(this).removeClass('off');

        $.ajax({
          url:load_url,
          type:'get',
          dataType : 'html',
          success:function(data){
            pop_ax.append($("<div class='remove'/>").html(data).find('.loadhtml').html());
          }
        });

        return false;
      });
    }
    return false;
  });
});
 

[number_1.html ]

 <div class="loadhtml">
    <div ax="main">
        <div class="bg-grey">            
            <h2 class="main-letter"><strong>#Number1</strong></h2>
        </div>
    </div>
</div>
 

[number_2.html ]

 <div class="loadhtml">
    <div ax="main">
        <div class="bg-grey">            
            <h2 class="main-letter"><strong>#Number2</strong></h2>
        </div>
    </div>
</div>
 

Интересно, можете ли вы вызвать number_1.html и number_2.html быстрее с ajax, как описано выше.

Или мы можем вызывать последовательно number_1.html > number_2.html последовательно?

Примечание: number_1.html , number_2.html Содержит динамические данные.

Комментарии:

1. Что вы подразумеваете под «ускорением»? Что вы пытаетесь сделать и / или что работает не так, как вы ожидаете?

2. @WillardSolutions Интересно, можете ли вы вызвать number_1.html и number_2.html быстрее с ajax, как описано выше. Или мы можем вызывать последовательно number_1.html > number_2.html последовательно?

3. Выполните number_1.html и number_2.html есть динамический контент или что-то, что выполняется при загрузке? потому что, если нет, вы можете включить их в скрытый DOM и показать их при необходимости с помощью CSS, это наверняка будет намного быстрее.

4. @drinu16 number_1.html , number_2.html Содержит динамические данные.

5. По-прежнему неясно, о чем вы спрашиваете. Под «загрузкой быстрее» вы подразумеваете, что хотите, чтобы они загружались при загрузке страницы, а не при прокрутке страницы пользователем вниз? Вы хотите сказать, что время загрузки сети слишком медленно? Является ли цифра 30% тем, что вы хотите изменить? Пожалуйста, помогите мне понять ваш вопрос