@Zkolya

Как на подгружаемые данные навесить функцию?

Данный код работает со статическими div

$(window).load(function(){

        $('.main-slider').addClass('animate-in');
        $('.preloader').remove();
        //End Preloader

        if( $('.masonery_area').length ) {
            $('.masonery_area').masonry();//Masonry
        }

        var $portfolio_selectors = $('.portfolio-filter >li>a');

        if($portfolio_selectors.length) {

            var $portfolio = $('.portfolio-items');
            $portfolio.isotope({
                itemSelector : '.portfolio-item',
                layoutMode : 'fitRows'
            });

            $portfolio_selectors.on('click', function(){
                $portfolio_selectors.removeClass('active');
                $(this).addClass('active');
                var selector = $(this).attr('data-filter');
                $portfolio.isotope({ filter: selector });
                return false;
            });
        }

    });


Пример блока

<div class="col-xs-12 col-md-3 col-sm-4   portfolio-item jurlica">
                        <div class="portfolio-wrapper">
                            <div class="portfolio-single">
                                <div class="portfolio-thumb">
                                    <img src="images/portfolio/3.jpg" class="img-responsive" alt="">
                                </div>
                                <div class="portfolio-view">
                                    <ul class="nav nav-pills">
                                        <li><a href="usluga.php"><i class="fa fa-link"></i></a></li>
                                        <li><a href="images/portfolio/3.jpg" data-lightbox="example-set"><i class="fa fa-eye"></i></a></li>
                                    </ul>
                                </div>
                            </div>
                            <div class="portfolio-info ">
                                <h2>Заголовок</h2>
                            </div>
                        </div>
                    </div>

А если генерировать блоки из базы ajax то уже не работает

$(function() {

     $.ajax({
       type: "POST",
       url: "serverscript/output_usl.php",
       success: function(result) {
        $(".portfolio-items").html(result);

       }
     });

  });
  • Вопрос задан
  • 130 просмотров
Пригласить эксперта
Ответы на вопрос 2
ThunderCat
@ThunderCat Куратор тега JavaScript
{PHP, MySql, HTML, JS, CSS} developer
Проверить что пришло в результ, проверить что отдал скрипт со стороны сервера, проверить ошибки в консоли. Кароче проверить, потом писать. А Подземный Стук - это к гадалкам и экстрасенсам.
Ответ написан
Комментировать
@dimentimor
Надо "обновить".
Все, что происходит внутри обработчика load - вынести в функцию, и вызывать ее при load событии и после того, как добавили новые блоки.
function slider () {
  // ...
}

window.onload = function () {
  slider();
};

ajax( function (r) {
  div.html(r);
  slider();
});
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы