Подгрузка контента с помощью Ajax. Съезжают блоки контента

Тема в разделе "Верстка", создана пользователем NikroVir, 17 дек 2013.

Информация :
Уважаемые пользователи, прежде чем ответить в теме или создать новую, внимательно ознакомьтесь с Правилами раздела и Правилами форума
Для быстрого поиска ответов на ваши вопросы воспользуйтесь Картой раздела и/или Поиском по разделу
Модераторы: ultra
  1. NikroVir

    NikroVir Извращённый отшельник

    Регистр.:
    27 апр 2008
    Сообщения:
    327
    Симпатии:
    108
    Использую хак подгрузки контента с помощью Ajax. Код хака ниже:
    Код:
    <center><a onclick="nextPage(); return false;" class="bbcodes" style="cursor: pointer">Показать еще</a></center><br />
    <div id="ajax-next-page" style="display: none;">[next-link][/next-link]</div>
    <script type="text/javascript">
    function nextPage() {
    var nextPage = $('#ajax-next-page a').attr('href');
    ShowLoading("");
    $('.bbcodes').remove();
    $('#ajax-next-page').remove();
    if (nextPage !== undefined) {
    $.ajax({
    url: nextPage,
    success: function(data) {
    $('#ajax-next-page').remove();
    $('#next-page').remove();
    HideLoading("");
    $('#dle-content').append($('#dle-content', data).html());
    var checkPage = $('#ajax-next-page a').attr('href');
    if(checkPage==undefined) {$('.bbcodes').remove();}
    }
    })
    }
    };
    </script>

    И всё было бы прекрасно, но вот незадача, после нажатия кнопки уползает в низ правая часть контента, а так же появляется отступ слева как на скрине ниже:

    [​IMG]

    Помогите пожалуйста справиться.

    Извиняюсь, что сразу не дал. просто думал, что может кто уже сталкивался со схожими проблемами. Ссылка на шаблон, т.к. он паблик, а двиг на локалхосте

    в shortstory2.tpl моё расположение блоков
     
    Последнее редактирование модератором: 17 дек 2013
  2. NiceBro

    NiceBro Создатель

    Регистр.:
    2 ноя 2012
    Сообщения:
    44
    Симпатии:
    25
    Лучше ссылку на сам сайт дай
     
  3. Stas-P

    Stas-P

    Регистр.:
    7 сен 2013
    Сообщения:
    165
    Симпатии:
    126
    Ты скинул архив с готовым шаблоном, то есть его нужно подключить к CMS и там уже потом разбирать. В общем заморочено =)
    Чтобы решить твою проблему, нужна генерированная HTML страница.

    Так как у тебя на локалке, дам тебе совет.
    Установи в свой браузер дополнение анализа кода. К примеру в firefox это firebug.
    И с помощью него анализируй код страницы, после того, как произойдет загрузка новых блоков.

    Ты сам увидишь, что происходит и почему появляется этот отступ.
     
  4. NikroVir

    NikroVir Извращённый отшельник

    Регистр.:
    27 апр 2008
    Сообщения:
    327
    Симпатии:
    108
    Да есть у меня firebug. ни на какие мысли он меня пока не натолкнул.
    завтра поставлю на какой-нить хост
     
  5. Prometeus

    Prometeus Постоялец

    Регистр.:
    9 дек 2013
    Сообщения:
    57
    Симпатии:
    12
    Вам в firebug стоит разобраться откуда берётся этот отступ слева. Кликните на нём правой кнопкой мыши и выберите Инспектировать элемент с помощью Firebug.
    Из-за этого отступа третий блок контента не влезает и переносится вниз.
     
  6. Wounderer

    Wounderer Создатель

    Регистр.:
    11 янв 2007
    Сообщения:
    21
    Симпатии:
    6
    Судя по скрину, отступ остается от кнопки "показать еще" вероятно.
     
  7. NikroVir

    NikroVir Извращённый отшельник

    Регистр.:
    27 апр 2008
    Сообщения:
    327
    Симпатии:
    108
    в общем не знаю, как не заметил вчера, но ситуация немного прояснилась. каждому 4 блоку (т.к. в строке 3) добавляется style="margin-left: 0px;", но после нажатия кнопки он перестаёт добавляться и появляется отступ. отсюда вопрос: как прилепить добавление отступа каждому 4 блоку в этом js?
     
  8. Stas-P

    Stas-P

    Регистр.:
    7 сен 2013
    Сообщения:
    165
    Симпатии:
    126
    Как вариант....
    Возьми и чуть-чуть доработай css этих блоков, чтобы они у тебя изначально все вставлялись без этих margin-left: 0px;
    Другими словами, настрой стиль этих блоков так, чтобы ты мог вставить любое их колличество и на странице все отображалось как надо. Тогда тебе не придется заморачиваться с тем, как 4 блоку добавлять стиль.
     
    Wounderer нравится это.
  9. Wounderer

    Wounderer Создатель

    Регистр.:
    11 янв 2007
    Сообщения:
    21
    Симпатии:
    6
    Код:
    $("СЕЛЕКТОP ДЛЯ ЭЛЕМЕНТА:nth-child(4n)").css({marginLeft:0});
    Соответственно, после добавления элементов
     
    NikroVir, antonio22 и Горбушка нравится это.
  10. Prometeus

    Prometeus Постоялец

    Регистр.:
    9 дек 2013
    Сообщения:
    57
    Симпатии:
    12
    Только вот у меня большие сомнения по каждому 4-му блоку. Судя по скришоту, код должен быть таким:
    Код:
    $("СЕЛЕКТОP ДЛЯ ЭЛЕМЕНТА:nth-child(3n+1)").css({marginLeft:0});
    Но всё равно, я считаю, что правильнее избавиться от причины появления отступа, чем лепить подобные костыли.
     
    NikroVir нравится это.