Модальное всплывающее окно перестало функционировать - PullRequest
0 голосов
/ 04 июля 2018

Сторонний разработчик создал модальное всплывающее окно для нашей страницы команды. По какой-то причине он перестал работать.

Кликнув по картинке сотрудников, их данные должны появиться под изображением

страница: https://www.bennettsfunerals.co.uk/about-bennetts-funeral-directors-essex/meet-the-team/

Я вставил ниже, как мне кажется, скрипт функции.

С чего бы это вдруг перестало работать !!! ???

==============================================

$ ('. Team'). Click (function () {

            var _this = $(this);

            if( $(_this).hasClass('active') )

            {

                return false;

            }

            else

            {

                $('.team.active').removeClass('active');

                $(_this).addClass('active');

                $('body').prepend('<div class="overlay"></div>');
            }
        });

        $(window).on('click', '.overlay', function(e) {

            $('.team.active').removeClass('active');

            $('.overlay').remove();

        });



        $('.close-overlay').click(function(e) {

            e.preventDefault();

            $('.team.active').removeClass('active');

            $('.overlay').remove();

            return false;
        });

        $('.print').click(function(e) {

            e.preventDefault();

            window.print();
        });
    });




        $('.close-overlay').click(function(e) {

            e.preventDefault();

            $('.team.active').removeClass('active');

            $('.overlay').remove();

            return false;
        });

        $('.print').click(function(e) {

            e.preventDefault();

            window.print();
        });
    });

Ответы [ 3 ]

0 голосов
/ 04 июля 2018

Код нарушается из-за синтаксической ошибки ( Uncaught SyntaxError: Неожиданный токен, если ). В строке 1046 вашего индексного файла отсутствует фигурная скобка ({) .

Линия: 1046

$('#responsive-sidebar-button').click(function() //function curly brace is missed

    $('#responsive-sidebar-button').click(function() { //Need to add this curly brace here.
0 голосов
/ 04 июля 2018

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

$('.team').click(function() {
    var _this = $(this);
    if( $(_this).hasClass('active') )
    {
       return false;
    }
    else
    {
       $('.team.active').removeClass('active');
       $(_this).addClass('active');
       $('body').prepend('<div class="overlay"></div>');
    }});
$('.close-overlay').click(function(e) {
    e.preventDefault();
    $('.team.active').removeClass('active');
    $('.overlay').remove();
    return false;
});
0 голосов
/ 04 июля 2018

Если вы посмотрите на консоль разработчика, то увидите синтаксическую ошибку в строке 1048 вашего индексного документа. Эта ошибка вызвана отсутствием фигурной скобки:

$('#responsive-sidebar-button').click(function() // need a curly bracket here

    if($('.sidebar').hasClass('opened')) {

        $('.sidebar').removeClass('opened');

        $('.sidebar').slideUp();

    } else {

        $('.sidebar').addClass('opened');

        $('.sidebar').slideDown();

    }

});

Итак, в итоге вы получите:

$('#responsive-sidebar-button').click(function(){

    if($('.sidebar').hasClass('opened')) {

        $('.sidebar').removeClass('opened');

        $('.sidebar').slideUp();

    } else {

        $('.sidebar').addClass('opened');

        $('.sidebar').slideDown();

    }

});
...