• Для подзагрузки предыдущих постов подключила скрипт ajax, в нем нужно подтянуть селектор для постов, но в теме Elegant_Pink не могу разобраться какой класс, так как каждый пост на главной блога выводится через id, получилось сделать постраничный, но когда кликаешь на «показать еще» — путь уже меняется, а посты со страницы 2 появляются только после перезагрузки. В чем может быть причина? Почему посты не грузятся снизу?

    Сам скрипт

    
    /*! pace 0.4.17 */
    window.paceOptions = {
      ajax: true,
      document: false,
      eventLag: false,
      elements: false,
      startOnPageLoad: false
    };
    (function()...
    
    /*! .isOnScreen() returns bool */
    jQuery.fn.isOnScreen = function(){
    
        var win = jQuery(window);
    
        var viewport = {
            top : win.scrollTop(),
            left : win.scrollLeft()
        };
        viewport.right = viewport.left + win.width();
        viewport.bottom = viewport.top + win.height();
    
        var bounds = this.offset();
        bounds.right = bounds.left + this.outerWidth();
        bounds.bottom = bounds.top + this.outerHeight();
    
        return (!(viewport.right < bounds.left || viewport.left > bounds.right || viewport.bottom < bounds.top || viewport.top > bounds.bottom));
    
    };
    
    jQuery(document).ready(function($) {
            var History = window.History;
            
        	var pageNum = parseInt(mts_ajax_loadposts.startPage) + 1;
        	var max = parseInt(mts_ajax_loadposts.maxPages);
        	var nextLink = mts_ajax_loadposts.nextLink;
            var autoLoad = mts_ajax_loadposts.autoLoad;
    		
           	    // Insert the "Load More Posts" link.
                $('.pagination')
                    .before('<div class="more-page-'+ pageNum +'"></div>')
                    .after('<div id="load-posts"><a href="#"><i class="fa fa-spinner"></i>' + mts_ajax_loadposts.i18n_loadmore + '</a></div>');
            	if (pageNum == max+1) {
                    $('#load-posts a').html('<i class="fa fa-ban"></i>'+mts_ajax_loadposts.i18n_nomore).addClass('disabled');
                }
                $('#load-posts a').click(function() {
                	if(pageNum <= max && !$(this).hasClass('loading')) {
                		$(this).html('<i class="fa fa-spinner fa-pulse"></i>'+mts_ajax_loadposts.i18n_loading).addClass('loading');
    
                        $('.more-page-'+ pageNum).load(nextLink + ' .row ep-masonry', function() {
                    		// Update page number and nextLink.
                    		pageNum++;
                            var new_url = nextLink;
                            History.replaceState(null, window.document.title, new_url);
                    		nextLink = nextLink.replace(/(\/?)page(\/|d=)[0-9]+/, '$1page$2'+ pageNum);
    
                            // Add a new placeholder, for when user clicks again.
                    		$('#load-posts').before('<div class="more-page-'+ pageNum +'"></div>');
    
                            if(pageNum <= max) {
                    			$('#load-posts a').html('<i class="fa fa-spinner"></i>'+mts_ajax_loadposts.i18n_loadmore).removeClass('loading');
                    		} else {
                    			$('#load-posts a').html('<i class="fa fa-ban"></i>'+mts_ajax_loadposts.i18n_nomore).addClass('disabled').removeClass('loading');
                    		}
                    	});
                        
                    } else {
            			// no more posts
            		}
    
                    return false;
            	});
           	$('.pagination').remove();
    
    var fnDelay = (function(){
      var timer = 0;
      return function(callback, ms){
        clearTimeout (timer);
        timer = setTimeout(callback, ms);
      };
    })();
    });
    
    • Тема изменена 8 лет, 3 месяца назад пользователем SeVlad. Причина: Оформление кода
    • Тема изменена 8 лет, 3 месяца назад пользователем SeVlad.
Просмотр 1 ответа (всего 1)
Просмотр 1 ответа (всего 1)
  • Тема «Скрипт ajax работает криво» закрыта для новых ответов.