Есть jQuery код,
function click() {
$('.select_list_current').on('click', function(){
// alert(1);
$(this).parent('.select_list_wrapper').toggleClass('open');
$(this).parent().find('.select_list').slideDown("slow");
});
$(document).on('click',function (event) {
if ($(event.target).closest('.select_list_wrapper').length == 0 && $(event.target).attr('id') != 'select_list_current') {
$('.select_list_wrapper.open').toggleClass('open');
$(this).parent().find('.select_list').hide("slow");
}
});
$('.select_list_radio').on('click', function(){
var current = $(this).find('label span').text();
$(this).parents('.select_list_wrapper').find('.select_list_current .select_list_current_item').text(current);
$(this).parents('.select_list_wrapper').removeClass('open');
$(this).parents('.select_list_wrapper').find('.select_list').css('display', 'block');
});
}
который навешивает событие на следующую верстку
<div class="selected_relative">
<div class="select_list_wrapper ">
<div class="select_list_current">
<span class="label">Сортировать:</span>
<span class="select_list_current_item">По популярности</span>
</div>
<div class="select_list">
<div class="select_list_radio"><input type="radio" id="by_popular" name="sort_list" checked><label for="by_popular"><span>По популярности</span> </label></div>
<div class="select_list_radio"><input type="radio" id="by_price" name="sort_list"><label for="by_price"><span>По цене</span> </label></div>
<div class="select_list_radio"><input type="radio" id="by_date" name="sort_list"><label for="by_date"><span>По новизне</span> </label></div>
</div>
</div>
</div>
Данные селекты встречаются на каждой страницы сайта.
Для того, чтобы функция click ()
сработала я ее вызываю при загрузке страницы
$(window).load(function() {
click();
});
И в своем компоненте
updated() {
this.$nextTick(function () {
setTimeout(() => {
click();
}, 1000)
})
},
Но срабатывает это в 100% только когда я страницу перезагружаю. При обычном "гулянии" по маршрутам селекты срабатывают через раз.
Я лично пользуюсь конструкцией вида:
$(function() {
$(document).on('click', '.popup-link', function(e) {
... код ...
});
});
Но так делать не очень хорошо.
Виртуальный выделенный сервер (VDS) становится отличным выбором
В общем суть следующая, писал лендинг на ноутеВ последствии, после переноса исходников на пк при открытии сайта обнаружил, что шрифты не отображаются...
Подскажите пожалуйста, как убрать(спрятать) кнопку "Выберите файл"?
Есть поисковик по базе данных в процессе выполнения поиска происходит выдача результата после чего нужно создать кнопку например "создать...
Есть список с чекбоксамиКак мне менять текст в ссылке, при активации этого чекбокса, на текст с кол-вом активных чекбоксов?