Ответы пользователя по тегу JavaScript
  • Как заставить работать checkbox в карточке товара?

    Попробуйте так:
    $(document).on('change', '#new_price', function () {
            if ($(this).is(':checked')) {
                var newPrice = $('.add_item[data-id=1]').attr('data-price') * 1 + $(this).val() * 1;
                $('.add_item[data-id=1]').attr('data-price', newPrice);
            } else {
                var newPrice = $('.add_item[data-id=1]').attr('data-price') * 1 - $(this).val() * 1;
                $('.add_item[data-id=1]').attr('data-price', newPrice);
            }
        })

    После чего добавляйте цену в корзину с "data-price"
    Ответ написан
    2 комментария
  • Почему в модальном окне, не работает скролл?

    @Egor1324 Автор вопроса
    Я нашел проблему, из-за чего не скроллится, вся проблема в
    .modal {
     transition: all 0.5s ease;
    }

    При удалении transition, все начинает корректно работать... И что делать с этим, не знаю....
    Ответ написан
    Комментировать
  • Как правильно реализовать?

    @Egor1324 Автор вопроса
    Решил проблему так:
    при открытие окна, загружаю в него картинки, а после закрытия полностью удаляю все содержимое слайдера и очищаю слайды $(".slider").slick("unslick").empty();
    Ответ написан
    Комментировать
  • Как в jquery плагине создать событие?

    @Egor1324 Автор вопроса
    Спасибо Stalker_RED , удалось решить проблему
    Получается так:
    В параметрах создаем функцию:
    var pluginName = "defaultPluginName",
    defaults = {
       show: function() {}
    };


    В init создаем переменную:
    init: function() {
       var options = this.options;
    }


    Теперь можно в init спокойно обращаться к этой функции
    init: function() {
       var options = this.options;
       elem.on("click", function(event){
          if ( option.show(event) != false ) {
             // Делаем что хотим при нажатии на на этот элемент
          }
       })
    }

    в js при инициализации:
    $("elem").pluginName({
       show: function(event) {
          // Тут все что вы хотите сделать при нажатии на элемент <b>elem</b>
          // Если указать return false; То все стандартные действия будут отменены
       }
    });
    Ответ написан
    Комментировать
  • Как правильно передать переменную player?

    @Egor1324 Автор вопроса
    Решил проблему добавив все действия с player в эту функцию function onPlayerReady() {}, которая вызывается после инициализации плеера
    Ответ написан
    Комментировать
  • Как правильно стилизовать плеер youtube на сайте?

    @Egor1324 Автор вопроса
    РЕшил проблему с fullscreen при помощи js кода:
    function toggleFullScreen(elem) {
        	if ((document.fullScreenElement !== undefined && document.fullScreenElement === null) || (document.msFullscreenElement !== undefined && document.msFullscreenElement === null) || (document.mozFullScreen !== undefined && !document.mozFullScreen) || (document.webkitIsFullScreen !== undefined && !document.webkitIsFullScreen)) {
        		if (elem.requestFullScreen) {
        			elem.requestFullScreen();
        		} else if (elem.mozRequestFullScreen) {
        			elem.mozRequestFullScreen();
        		} else if (elem.webkitRequestFullScreen) {
        			elem.webkitRequestFullScreen(Element.ALLOW_KEYBOARD_INPUT);
        		} else if (elem.msRequestFullscreen) {
        			elem.msRequestFullscreen();
        		}
        	} else {
        		if (document.cancelFullScreen) {
        			document.cancelFullScreen();
        		} else if (document.mozCancelFullScreen) {
        			document.mozCancelFullScreen();
        		} else if (document.webkitCancelFullScreen) {
        			document.webkitCancelFullScreen();
        		} else if (document.msExitFullscreen) {
        			document.msExitFullscreen();
        		}
        	}
        }


    Но появилась другая проблема, при двойном клике по Youtube плееру, он становиться fullscreen и перекрывает мою панель, как можно этот двойной клик блокировать ?

    Что бы по двойному клику не открывался fullscreen нужно для iframe в css прописать:
    user-select: none;
    pointer-events: none;
    Ответ написан
    1 комментарий