Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Динамическа замена элементов, нужна помошь (https://javascript.ru/forum/misc/68173-dinamicheska-zamena-ehlementov-nuzhna-pomosh.html)

Lyapisinka 30.03.2017 14:19

Динамическа замена элементов, нужна помошь
 
Вложений: 1
Здравствуйте помогите с проблемой динамической заменой элементов

Код:

        /* вызов и закрытие 1 слайдера */
    $('.openslider1').on('click', function(){
            $("div.slider1").addClass("slideDown")
            $("div.modal1").css("visibility", "visible");     
        $(this).closest(".duscountplustovar").addClass('zam');
    });

    $(document).on('click','.check', function(){
            $(".zam").html($(this).closest(".duscountplustovar").html());
            $(".duscountplustovar").removeClass("zam");
            $(".openslider1").removeClass("check");
            $("div.slider1").removeClass("slideDown");
        $("div.modal1").css("visibility", "hidden");
    });

На клик ".openslider1" происходит анимация открытия слайдера показано на 1 рисунке
Затем на клик на "выбрать другое" это класс ".check , происходит замена содержимого элемента с помощью html(), удаление классов и закрытие слайдера.
Проблема в том, что он всё заменяет нормально, но вот потом замененный блок с помощью html() больше не хочет работать с JS, то есть не открывается слайдер второй раз

рони 30.03.2017 14:44

Цитата:

Сообщение от Lyapisinka
$('.openslider1').on('click', function(){



$('.zam').on('click', '.openslider1', function(){

Lyapisinka 30.03.2017 15:18

Цитата:

Сообщение от рони (Сообщение 448939)

$('.zam').on('click', '.openslider1', function(){

так он вообще не открывает слайдер. Думаю потому что .zam создаётся в этой функции, поэтому при клике он не знает что это такое

рони 30.03.2017 15:19

Lyapisinka,
замените на ближайший постоянный предок openslider1 , если нет таких то document


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