Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Некорректно считается высота BXSlider (https://javascript.ru/forum/jquery/62833-nekorrektno-schitaetsya-vysota-bxslider.html)

K_Dmitrij 03.05.2016 22:10

Некорректно считается высота BXSlider
 
Столкнулся с проблемой... Есть верстка "слайдеры внутри слайдера" - http://gsdev.ru/video-o-batutah/test/index.html (два предпоследних блока).
Проблема в высоте слайдера, которая поле каждого обновления страницы разная, то правильная, то в три раза больше. Задать фиксированную или минимальную высоту обертке слайдера не могу, так как содержание слайдов может и будет меняться... В чем может быть проблема и как ее устранить?!
Спасибо!

рони 03.05.2016 22:14

K_Dmitrij,
обычно помогает смена инициализации с ready на load

K_Dmitrij 03.05.2016 22:27

А можно больше подробностей, а то я не особо силен в этой теме?!)

K_Dmitrij 03.05.2016 22:33

Вызываю я слайдер следующим образом

$(document).ready(function() {
...
/*слайдер-родитель*/
$('.photo-slider').bxSlider({
pager : true,
pagerCustom: '#photo-slider-pager'
});
/*внутренний лайдер*/
$('.inside-slider').bxSlider({
controls : true,
pager : true,
slideWidth: 530,
minSlides: 2,
maxSlides: 2,
moveSlides: 1,
slideMargin: 40
});
...
});

рони 03.05.2016 22:36

K_Dmitrij,
$(window).load(function(){
 $('.photo-slider').bxSlider({
 pager : true,
 pagerCustom: '#photo-slider-pager'
 });
 /*внутренний лайдер*/
 $('.inside-slider').bxSlider({
 controls : true,
 pager : true,
 slideWidth: 530,
 minSlides: 2,
 maxSlides: 2,
 moveSlides: 1,
 slideMargin: 40
 });
   })

K_Dmitrij 03.05.2016 22:42

Я так понимаю, это все должно находится внутри $(document).ready(function() {}), правильно?!

Call .bxslider() on <ul class="bxslider">. Note that the call must be made inside of a $(document).ready() call, or the plugin will not work!

К сожалению, это проблему не решает, высота все так же прыгает...

K_Dmitrij 03.05.2016 22:46

Кстати, интересный момент, если при загрузке страницы высота некорректно высчитана, то после вызова инспектора (chrome), высота становится корректной

рони 03.05.2016 23:00

Цитата:

Сообщение от K_Dmitrij
Я так понимаю, это все должно находится внутри $(document).ready(function() {}), правильно?!

нет -- это без ready отдельно

K_Dmitrij 03.05.2016 23:09

Вынес блок load из $(document).ready(function() {}) - не помогло...

рони 03.05.2016 23:12

K_Dmitrij,
так должен быть ваш файл common.js и проверьте кеш после смены
$(function() {
    // Плавная прокрутка к якорям

    $('a[href*=#]').bind("click", function(e) {
        var anchor = $(this);
        $('html, body').stop().animate({
            scrollTop: $(anchor.attr('href')).offset().top - 95
        }, 1800);
        e.preventDefault();
    });
    // Добавление класса active в header/.main-nav
    $(".main-nav a").click(function() {
        $(".main-nav a").removeClass("active");
        $(this).toggleClass("active");
    });

    $('.show-tile-slider').click(function() {
        $('.photo-slider-wrap').css('display', 'none');
        $('.tile-slider-wrap').css('display', 'block');
        $('.tile-slider-seminar-1').bxSlider({
            pager: true,
            controls: true,
            slideWidth: 220,
            minSlides: 5,
            maxSlides: 5,
            moveSlides: 1,

            pagerCustom: '#tile-photo-slider-pager'
        });
    });
    $(".fancybox").fancybox();
     /*всплывающая форма регистрации*/
    $('.register-event').on('click', function() {
        $('#registration-wrap').fadeIn('slow');
        return false;
    });


    $(document).click(function(event) {
        if ($(event.target).closest("#registration-wrap .popup").length) return;
        $("#registration-wrap").fadeOut("slow");
        event.stopPropagation();
    });

    /*всплывающая форма регистрации*/

    /*форма обратной связи*/
    $("#registration-form").submit(function() {
        $.ajax({
            type: "POST",
            url: "registration.php",
            data: $(this).serialize()
        }).done(function() {
            $(this).find("input").val("");
            $("#registration-form").trigger("reset");
            $("#registration-wrap").fadeOut("slow");
            $("#thanks").fadeIn('slow');
            setTimeout(function() {
                $("#thanks").fadeOut('slow');
            }, 3000);
        });
        return false;
    });
    /*форма обратной связи*/

    /*форма обратной связи*/
    $("#begin-education").submit(function() {
        $.ajax({
            type: "POST",
            url: "mail.php",
            data: $(this).serialize()
        }).done(function() {
            $(this).find("input").val("");
            $("#begin-education").trigger("reset");
            $("#thanks").fadeIn('slow');
            setTimeout(function() {
                $("#thanks").fadeOut('slow');
            }, 3000);
        });
        return false;
    });
    /*форма обратной связи*/

});

$(window).load(function() {
    $('.block-1-slider').bxSlider({
        mode: 'fade',
        auto: true,
        controls: true
    });

    $('.block-4-slider').bxSlider({
        mode: 'fade',
        auto: true,
        controls: false,
        pagerCustom: '#block-4-bx-pager'
    });

    $('.video-slider').bxSlider({
        pager: true,
        pagerCustom: '#video-slider-pager'
    });

    $('.inside-video-slider').bxSlider({
        pager: true,
        slideWidth: 530,
        minSlides: 2,
        maxSlides: 2,
        moveSlides: 1,
        slideMargin: 40,

        pagerCustom: '#inside-video-slider-pager'
    });

    $('.inside-video-slider-2').bxSlider({
        pager: true,
        slideWidth: 530,
        minSlides: 2,
        maxSlides: 2,
        moveSlides: 1,
        slideMargin: 40,
        pagerCustom: '#inside-video-slider-pager-2'
    });

    $('.inside-video-slider-3').bxSlider({
        pager: true,
        slideWidth: 530,
        minSlides: 2,
        maxSlides: 2,
        moveSlides: 1,
        slideMargin: 40,
        pagerCustom: '#inside-video-slider-pager-3'
    });

    $('.inside-video-slider-4').bxSlider({
        pager: true,
        slideWidth: 530,
        minSlides: 2,
        maxSlides: 2,
        moveSlides: 1,
        slideMargin: 40,
        pagerCustom: '#inside-video-slider-pager-4'
    });

    $('.photo-slider').bxSlider({
        pager: true,
        pagerCustom: '#photo-slider-pager'
    });

    $('.inside-photo-slider').bxSlider({
        pager: true,
        slideWidth: 530,
        minSlides: 2,
        maxSlides: 2,
        moveSlides: 1,
        slideMargin: 40,
        pagerCustom: '#inside-photo-slider-pager'
    });
    $('.inside-photo-slider-2').bxSlider({
        pager: true,
        slideWidth: 530,
        minSlides: 2,
        maxSlides: 2,
        moveSlides: 1,
        slideMargin: 40,
        pagerCustom: '#inside-photo-slider-pager-2'
    });
    $('.inside-photo-slider-3').bxSlider({
        pager: true,
        slideWidth: 530,
        minSlides: 2,
        maxSlides: 2,
        moveSlides: 1,
        slideMargin: 40,
        pagerCustom: '#inside-photo-slider-pager-3'
    });

    $('.inside-photo-slider-4').bxSlider({
        pager: true,
        slideWidth: 530,
        minSlides: 2,
        maxSlides: 2,
        moveSlides: 1,
        slideMargin: 40,
        pagerCustom: '#inside-photo-slider-pager-4'
    });
})


Часовой пояс GMT +3, время: 14:44.