• Android: SLICE, батон, режем на куски. Но последний ломает всю хлеборезку. Почему?

    MrDecoy
    @MrDecoy Куратор тега CSS
    Парочка возможных путей решения:
    - рассмотреть уменьшение зоны галереи на мобилках за счет доп отступов сбоку, тогда слайс не будет выходить за экран и не будет создавать горизонтальную прокрутку.
    - Уменьшить количество слайсов на мобилках
    - Навесить overflow:hidden на sb-slider со значением important чтобы инлайн стили во время смены слайдов не перебивали это значение. Тогда будет обрезаться по списку (наверное выбрал бы это решение как лучшее для мобилок)
    - Отказаться в целом от такой анимации смены слайдов в пользу чего-то по проще для мобилок
    Написано
  • Android: SLICE, батон, режем на куски. Но последний ломает всю хлеборезку. Почему?

    MrDecoy
    @MrDecoy Куратор тега CSS
    Из-за того, что у Вас там тень от галереи и навигация сделана на position: absolute - overflow: hidden решает проблему, но так же скрывает тень и навигацию точками.

    Тут по хорошему нужно переверстать, но как хотфикс можно обойтись overflow:hidden на самом body. Проблему решает и навигцация на месте, но в нормальном проекте я бы так не делал.
    Написано
  • Как сделать так, чтобы звезда падала только при скролле страницы?

    MrDecoy
    @MrDecoy Куратор тега CSS
    Такие вопросы для более скорого решения лучше создавать сразу с демкой на codepen
    Написано
  • Пустая страница, ошибок нет. JS. В чем проблема?

    MrDecoy
    @MrDecoy Куратор тега CSS
    seregadushka,
    Если вопрос не нужен, то можно удалить, чтобы я не следил за ним.
    У меня нет полномочий удалять вопросы. Это в ведении модераторов.
    Ну и, в целом, такое не практикуется, если был дан ответ и не нарушены правила, так как в этом смысл платформы. Если у кого-то будет подобная проблема он сможет найти похожий вопрос и сразу ознакомиться с решением, которое может подойти и ему.
    Написано
  • Пустая страница, ошибок нет. JS. В чем проблема?

    MrDecoy
    @MrDecoy Куратор тега CSS
    seregadushka,
    а вам не кажется здесь какая-то подозрительная рекурсия

    Нет, не кажется. У вас show - это глобальное имя функции.
    А в $navArrows.show() -это метод jQuery элемента.
    Написано
  • Пустая страница, ошибок нет. JS. В чем проблема?

    MrDecoy
    @MrDecoy Куратор тега CSS
    seregadushka, Запустите и show() и то, что внутри animation.js Друг за другом, скажем внутри show(). animation.js в последнюю очередь.

    То есть вот такой код должен быть внутри файла show.js, а файла animate.js быть не должно:
    function show() {
      var count = 16;
      var block = [];
       var dots = [];
      for (let i = 0; i < count; i++) {
        block.push('<li>' + li_str[i] + '</li>');
         dots.push('<span>' + '</span>'); }
      document.getElementById('sb-slider').innerHTML = block.join('');
      document.getElementById('nav-dots').innerHTML = dots.join('');  
    
     			$(function() {
    				var Page = (function() {
    					var $navArrows = $( '#nav-arrows' ).hide(),
    						$navDots = $( '#nav-dots' ).hide(),
    						$nav = $navDots.children( 'span' ),										 
    						$shadow = $( '#shadow' ).hide(),
    						slicebox = $( '#sb-slider' ).slicebox( {
    							onReady: function() {
    								$navArrows.show();
    								$navDots.show();
    								$shadow.show();	},
    							orientation: 'r',
    							cuboidsRandom: true,
    							disperseFactor: 30,
    							perspective: 1200,
    							cuboidsCount: 5,
    							maxCuboidsCount: 15,
    							colorHiddenSides: '#222',
    							sequentialFactor: 150,
    							speed: 600,
    							easing: 'ease',
    							autoplay: true,
    							interval: 3000,
    							fallbackFadeSpeed: 300,
    						onBeforeChange : function( pos ) {
    								$nav.removeClass( 'nav-dot-current' );
    								$nav.eq( pos ).addClass( 'nav-dot-current' );	}												 
    															} ),
    						init = function() {
    							initEvents(); },
    						initEvents = function() {
    							// add navigation events
    							$navArrows.children( ':first' ).on( 'click', function() {
    								slicebox.next();
    								return false;										} );
    							$navArrows.children( ':last' ).on( 'click', function() {
    								slicebox.previous();
    								return false;  								   } );
    							$nav.each( function( i ) {
    								$( this ).on( 'click', function( event ) {
    									var $dot = $( this );
    									if( !slicebox.isActive() ) {
    										$nav.removeClass( 'nav-dot-current' );
    										$dot.addClass( 'nav-dot-current' ); 
    																}
    									slicebox.jump( i + 1 );
    									return false;							} 
    											); 
    											   		} 
    									);	
    												};
    						return { init : init };
    										})();
    				Page.init();
    									});
    }
     
    window.addEventListener("load", (event) => { show() });
    Написано
  • Пустая страница, ошибок нет. JS. В чем проблема?

    MrDecoy
    @MrDecoy Куратор тега CSS
    seregadushka, Я Вам сказал сделать совсем не это.
    Написано
  • Пустая страница, ошибок нет. JS. В чем проблема?

    MrDecoy
    @MrDecoy Куратор тега CSS
    seregadushka, Ну, Вы же в этом не понимаете, откуда Вы знаете что так будет хуже?
    Ну.. и даже если так, что может быть хуже чем "не работает"?)
    Написано
  • Пустая страница, ошибок нет. JS. В чем проблема?

    MrDecoy
    @MrDecoy Куратор тега CSS
    seregadushka, Дубль два.
    show.js собирает список.
    animation.js превращает этот список в слайдер.

    В вашем коде animation.js срабатывает раньше чем show.js. То есть ещё нет списка, который нужно преобразовать в слайдер. Поэтому ничего и не отображается.
    Написано
  • Пустая страница, ошибок нет. JS. В чем проблема?

    MrDecoy
    @MrDecoy Куратор тега CSS
    seregadushka, Что и требовалось доказать.
    У вас код слайдера срабатывает раньше чем отрисовка элементов списка.
    Соответтсвенно, так как элементов еще нет, то и они и не становятся частью слайдера.
    А потом они отрисовываются, но все за display: none и тд.

    Запустите и show() и то, что внутри animation.js Друг за другом, скажем внутри show(). animation.js в последнюю очередь.
    Написано
  • Пустая страница, ошибок нет. JS. В чем проблема?

    MrDecoy
    @MrDecoy Куратор тега CSS
    seregadushka, 163-238 в отедльный файл и 255-311 так же в отедельный файл.
    Написано
  • Пустая страница, ошибок нет. JS. В чем проблема?

    MrDecoy
    @MrDecoy Куратор тега CSS
    seregadushka,
    я могу вынести в отдельные файлы... Это поможет?

    Да.

    нy мне надо так. Это более круто.

    Крутость понятие очень относительное. Нормальные разработчики делают так как больше подходит задаче, а не как круче.

    Тем более, только JS позволяет делать динамический сайты.

    А вот это не понял к чему сказано. То что Вы сделали на массиве строк - ничего общего с обычной современной разработкой на js фрэймворках не имеет.
    Написано
  • Пустая страница, ошибок нет. JS. В чем проблема?

    MrDecoy
    @MrDecoy Куратор тега CSS
    seregadushka, если вы во втором примере переносите разметку в разметку и всё работает, то есть подозрение на нарушение порядка исполнения, если всё остальное прям одинаковое. Но так как демки нет и код зашит прям в html - то проверить это крайне не удобно. Еслиб хотя бы вынесли js в отедльные файлы..
    Написано
  • Какой фреймворк использовать для форм JS?

    MrDecoy
    @MrDecoy Куратор тега JavaScript
    Так если Вы уже знаете библиотеку, которая решает Ваш вопрос, может Вам и вопрос стоит соответствующий задать? Сделать демку, показать как что подключаете, какой ожидаемый результат, а какой фактический. И задать вопрос, в чём ошибка, которая приводит к несоответствию результатов?

    Вам сейчас предложат другую библиотеку. Вы с ней тоже не разберётесь. Не очень эффективно получается.
    Написано
  • Пустая страница, ошибок нет. JS. В чем проблема?

    MrDecoy
    @MrDecoy Куратор тега CSS
    Второй сделан из первого путем переноса списка в текстовую строку , собираемую в JS . Вроде так более современно и модерново.

    Не знаю в каком месте это модерново... А Вы пробовали не делать так, а оставить разметку в... разметке? Тоже не работает?
    Написано
  • Какой актуальный стек верстки 2024?

    MrDecoy
    @MrDecoy
    Если вы хотите научиться именно хорошо верстать, то углубляйте знания в чистом CSS.

    HTML с семантикой и доступностью грустят от таких слов...
    Написано
  • Ведётся ли здесь статистика кликов "Отметить решением"? Если да, то каков процент тех вопрошающих, кто НЕ делает это?

    MrDecoy
    @MrDecoy
    Drno, не смотря на то, что я, в целом, тоже делаю некоторые движения для лучшей статистики, вы абсолютно правы. Суть площадки именно в помощи другим.

    Использование площадки для прокачки личного бренд это, в лучшем случае, приятный бонус, в худшем - яд, "убивающий" площадку, так как если все начнут так делать, то начинающие не будут получать ответы на свои вопросы, что приведёт к тому, что рано или поздно вопросы практически перестанут задаваться и лишь тогда, заскучавшие "мастера" начнут отвечать снова на вопросы новичкам. Скорее всего не развёрнуто, лениво и местами токсично...
    Написано
  • Что хочет EslintError Unexpected identifier?

    MrDecoy
    @MrDecoy Куратор тега JavaScript
    Ну... исходя из того что вы скинули, что не достаточно для того чтобы говорить прям уверенно, и с учётом того что мой ес линт ни на что не ругается, кроме того что скорее всего buttonRef стоит добавить в зависимости к useEffect, у Вас в целом какая-то проблема с настройкой линтера, раз ругается на line 0.
    Написано