Radrigo

Рейтинг
86
Регистрация
01.12.2012

К сожалению, такой вариант вообще никак не работает. По поводу помечать слайды классом, спасибо за подсказку

                <script>


                        
                                function init() {
                                        if (jQuery('#dark').hasClass('carousel-item-next') || jQuery('#dark').hasClass('carousel-item-prev'))  {
                                                jQuery('body').removeClass('light-fon').addClass('dark-fon');
                                        } else {
                                                jQuery('body').removeClass('dark-fon').addClass('light-fon');
                                        }
                                }

                                $(document).ready(function () {
                                        $('#carouselExampleControls').on('slide.bs.carousel', function () {
                                                init();
                                        });
                                        init();
                                })

                
</script>
silicoid #:
практически все правильно сделали, но можно было упростить
и самое главное.
не забывайте оборачивать код использующий jQuery в конструкцию $(document).ready
это избавит сайт от проблем, если, например, что-то не успеет загрузиться или отрендериться до исполнения скрипта

Спасибо большое.
Может знаете, как сделать, чтобы класс добавлялся, когда переход между блоками только начинается, а не после того, как завершится? Сейчас добавляется тогда, когда блок с id="dark" полностью покажется.
Пример можно посмотреть здесь http://moiseenko.gusev-online.ru/

Решил проблему при загрузке сайта добавлением еще одной функции. Она нормально срабатывает именно в тот момент, если у первого блока при загрузке сайта присутствует блок с id="dark"

                <script>
                        function init() {
                                if (jQuery('#dark').hasClass('active')) {
                                        jQuery('#header').addClass('dark-fon');
                                } else {
                                        jQuery('#header').addClass('light-fon');
                                }
                        }
                        init();
                        $('#carouselExampleControls').on('slid.bs.carousel', function () {
                                if (jQuery('#dark').hasClass('active')) {
                                        jQuery('#header').removeClass('light-fon').addClass('dark-fon');
                                } else {
                                        jQuery('#header').removeClass('dark-fon').addClass('light-fon');
                                }
                        });
                
</script>

Может кто-то подскажет еще, как-то сделать, чтобы класс добавлялся в начале перехода к блоку с id="dark", а не после того, как переход завершится

silicoid #:

так сложно сказать. Надо иметь доступ к пациенту. Но первое, что приходит в голову, попробуйте сменить обработчик на slid.bs.carousel

Спасибо. Помогло. Но теперь появилась другая проблема. Класс не добавляется, если при загрузке сайта первый блок в слайдере загружается с id="dark". Класс добавляется к блоку с этим id только при перелистывании на него

Поспешил. Работает, но не так как надо. Добавляет класс почему-то только следующему блоку. То есть класс добавляется только только тогда, когда блог с id="dark" исчезает. Когда он активен, класс не добавляется. Подскажите пожалуйста, что я сделал не так

        $('#carouselExampleControls').on('slide.bs.carousel', function () {
                        if (jQuery('#dark').hasClass('active')) {
                                jQuery('#header').addClass('dark-fon');
                        } else {
                                jQuery('#header').removeClass('dark-fon');
                        }
        });
silicoid #:
ну так вы же сами дали ссылку на решение проблемы
там есть обработчик события $('#carouselExampleControls').on('slide.bs.carousel' или ' slid.bs.carousel ' ......
просто смотрите через консоль $(this) и многое станет сразу понятно
После вашего комментария сообразил. Спасибо)
onep:
Если дефолтный не устраивает
_getbootstrap.com/docs/4.4/components/carousel/
куча сниппетов есть
_bootsnipp.com/tags/carousel

Спасибо :)

Всем привет.

Подскажите, как правильно закрыть для индексации все страницы для печати в движке DLE в robots.txt?

Страницы для печати имеют примерно такие ссылки

у новостей
sait.ru/news/obshestvo/print:page,1,9508-test-test.html
у статистических страниц
sait.ru/print:test.html

Какой вариант будет правильнее?

Disallow: *print:*

Disallow: /*print:

Disallow: /*print:*

Или может как то по другому?

Joker-jar:
ОМГ, зачем вы этот весь код из библиотек повыковыривали?

https://jsfiddle.net/n30nvhyd/

Взял только самое необходимое, для примера=)

Спасибо=)

LEOnidUKG:
FF 52 всё отлично никуда ничего не смещается.

FF обновился и тоже стало ок, до этого была 51 версия.

Спасибо.

Всего: 67