Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 06.08.2021, 20:22
Новичок на форуме
Отправить личное сообщение для remmas Посмотреть профиль Найти все сообщения от remmas
 
Регистрация: 06.08.2021
Сообщений: 9

Сообщение от рони Посмотреть сообщение
remmas,
все кнопки будут открывать одно и тоже модальное окно?
Да. Именно так
Ответить с цитированием
  #12 (permalink)  
Старый 06.08.2021, 20:39
Аватар для voraa
Профессор
Отправить личное сообщение для voraa Посмотреть профиль Найти все сообщения от voraa
 
Регистрация: 03.02.2020
Сообщений: 2,750

Сообщение от remmas
Класс ссылке (кнопки) уже прописан.
Сообщение от remmas
<a href="#" id="myBtn">Модальное окно</a>
Где класс?
Сообщение от remmas
Если бы я хотел прописать классы то сюда с вопросом не пришел
Что мешает написать
<a href="#" id="myBtn" class="showmod">

Ну не хотите, как хотите

Да и не интересен ваш css
Что бы помочь, интересен html, со всеми ссылками кнопками (кстати, почему <a>, а не <button>?), и контейнером, где они находятся
Ответить с цитированием
  #13 (permalink)  
Старый 06.08.2021, 20:40
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,123

remmas,
<!DOCTYPE html>

<html>

<head>
    <title>Untitled</title>
    <meta charset="utf-8">
    <style type="text/css">
        .modal {
            display: none;
            position: fixed;
            z-index: 999;
            padding-top: 100px;
            left: 0;
            top: 0;
            width: 100%;
            height: 100%;
            overflow: auto;
            background-color: #000;
            background-color: rgba(0, 0, 0, 0.4)
        }

        .modal-content {
            position: relative;
            background-color: #EAE5E5;
            margin: auto;
            padding: 0;
            border: 1px solid #444;
            width: 33%;
            box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
            -webkit-animation-name: animatetop;
            -webkit-animation-duration: .4s;
            animation-name: animatetop;
            animation-duration: .4s
        }

        .modal-content h2,
        h3 {
            font-weight: 400;
            font-size: 14px;
            line-height: 1.1
        }

        .modal-body-text {
            color: #514f4f;
            font-size: 14px;
            text-align: center;
            padding: 20px 16px
        }

        .contact {
            max-width: 467px;
            min-width: 320px
        }

        .contact * {
            outline: none;
            border: 0;
            background: none
        }

        form fieldset {
            display: block;
            padding: 25px 30px
        }

        form .col-2 {
            width: 100%
        }

        form .row:after {
            content: '';
            display: table;
            clear: both
        }

        form section {
            margin-bottom: 20px
        }

        form .input,
        form .textarea,
        form .radio,
        form .checkbox,
        form .button {
            position: relative;
            display: block
        }

        form .fa-append {
            position: absolute;
            top: 5px;
            right: 5px;
            width: 29px;
            height: 29px;
            padding-left: 3px;
            border-left: 1px solid #e5e5e5;
            font-size: 15px;
            line-height: 29px;
            text-align: center;
            color: #ccc
        }

        form .input .fa-append+input,
        form .textarea .fa-append+textarea {
            padding-right: 46px
        }

        form .input input,
        form .textarea textarea {
            display: block;
            box-sizing: border-box;
            -moz-box-sizing: border-box;
            width: 100%;
            height: 50px;
            padding: 10px;
            outline: none;
            border: 1px solid #e5e5e5;
            border-radius: 0;
            background: #fff;
            font: 13px/19px 'Open Sans', Helvetica, Arial, sans-serif;
            color: #404040;
            appearance: normal;
            -moz-appearance: none;
            -webkit-appearance: none;
            transition: border-color .3s;
            -o-transition: border-color .3s;
            -ms-transition: border-color .3s;
            -moz-transition: border-color .3s;
            -webkit-transition: border-color .3s
        }

        form .input:hover input,
        form .textarea:hover textarea,
        form .checkbox:hover i {
            border-color: #00BDAB
        }

        form .input input:focus,
        form .textarea textarea:focus,
        form .checkbox input:focus+i {
            border-color: #009688
        }

        form .button {
            float: right;
            height: 39px;
            overflow: hidden;
            margin-left: 20px;
            padding: 0 20px;
            outline: none;
            border: 0;
            background-color: #ff0202;
            font: 300 13px/39px 'Open Sans', Helvetica, Arial, sans-serif;
            text-decoration: none;
            color: #fff;
            cursor: pointer;
            opacity: .8;
            transition: opacity .2s;
            -o-transition: opacity .2s;
            -ms-transition: opacity .2s;
            -moz-transition: opacity .2s;
            -webkit-transition: opacity .2s
        }

        form .button:hover {
            opacity: 1
        }

        @-webkit-keyframes animatetop {
            from {
                top: -300px;
                opacity: 0
            }

            to {
                top: 0;
                opacity: 1
            }
        }

        @keyframes animatetop {
            from {
                top: -300px;
                opacity: 0
            }

            to {
                top: 0;
                opacity: 1
            }
        }

        .modal-header {
            padding: 2px 16px;
            background-color: #EAE5E5;
            color: #514f4f;
            border-bottom: 1px solid #d2c7c7
        }

        .modal-body {
            padding: 2px 8px
        }

        .modal-footer {
            padding: 2px 8px;
            background-color: #EAE5E5;
            color: #514f4f;
            border-top: 1px solid #d2c7c7;
            padding: 10px 15px;
            font-size: 8px;
            text-align: center
        }

        .close {
            color: #444;
            float: right;
            font-size: 28px;
            font-weight: 700
        }

        .close:hover,
        .close:focus {
            color: #000;
            text-decoration: none;
            cursor: pointer
        }

        @media (max-width: 991px) {
            .modal-content {
                width: 85%
            }
        }

        @media (max-width: 767px) {
            .modal-content {
                width: 50%
            }
        }

        @media (max-width: 575px) {
            .modal-content {
                width: 75%
            }
        }

        @media (max-width: 420px) {
            .modal-content {
                width: 95%
            }

            .modal-body {
                padding: 0
            }

            .modal-footer,
            .modal-content h2 {
                font-size: 10px
            }
        }

        @media screen and (max-width: 470px) {

            .col,
            .col-2 {
                float: none !important;
                width: 100% !important
            }
        }

        .modal.open {
            display: block;
        }
    </style>

    <script>
        document.addEventListener("click", ({
            target
        }) => {
            let elem;
            if (elem = target.closest("a.btn_modal")) myModal.classList.add("open");
            if (elem = target.closest("#myModal .close") || target == myModal) myModal.classList.remove("open");
        })
    </script>
</head>

<body>
    <a href="#" id="myBtn" class="btn_modal">Модальное окно</a>
    <a href="#" id="myBtn1" class="btn_modal">Модальное окно</a>
    <a href="#" id="myBtn2" class="btn_modal">Модальное окно</a>
    <a href="#" id="myBtn3" class="btn_modal">Модальное окно</a>
    <a href="#" id="myBtn4" class="btn_modal">Модальное окно</a>


    <div id="myModal" class="modal">
        <div class="modal-content">
            <div class="modal-header"> <span class="close">&times;</span>
                <h2>Верх окна</h2>
            </div>
            <div class="modal-body">
                Текст окна
            </div>
            <div class="modal-footer">Футер</div>
        </div>
    </div>

</body>

</html>
Ответить с цитированием
  #14 (permalink)  
Старый 06.08.2021, 20:42
Новичок на форуме
Отправить личное сообщение для remmas Посмотреть профиль Найти все сообщения от remmas
 
Регистрация: 06.08.2021
Сообщений: 9

Сообщение от voraa Посмотреть сообщение
Что бы помочь, интересен html, со всеми ссылками кнопками (кстати, почему <a>, а не <button>?), и контейнером, где они находятся
тук

Сайт собирался на этом конструкторе
Ответить с цитированием
  #15 (permalink)  
Старый 06.08.2021, 21:08
Новичок на форуме
Отправить личное сообщение для remmas Посмотреть профиль Найти все сообщения от remmas
 
Регистрация: 06.08.2021
Сообщений: 9

Сообщение от рони Посмотреть сообщение
remmas,
Все супер с скриптом, вот только работает один раз. Когда кликаю еще раз, то не вызывает повторно форму Чтобы повторно открыть, то приходится обновлять страницу
Ответить с цитированием
  #16 (permalink)  
Старый 06.08.2021, 22:07
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,123

remmas,
можно только гадать, что у вас не так.
Ответить с цитированием
  #17 (permalink)  
Старый 07.08.2021, 07:27
Новичок на форуме
Отправить личное сообщение для remmas Посмотреть профиль Найти все сообщения от remmas
 
Регистрация: 06.08.2021
Сообщений: 9

Сообщение от рони Посмотреть сообщение
remmas,
можно только гадать, что у вас не так.
Да нет.. Все так.. Просто убрал с ссылки href"#" и все заработало. Огромнейшее спасибо
Ответить с цитированием
  #18 (permalink)  
Старый 07.08.2021, 07:36
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,123

Сообщение от remmas
убрал с ссылки href"#"
как вариант ...
document.addEventListener("click", event => {
            let elem, {target} = event;
            if (elem = target.closest("a.btn_modal")) {
            event.preventDefault();
            myModal.classList.add("open");
            };
            if (elem = target.closest("#myModal .close") || target == myModal) myModal.classList.remove("open");
        })
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ищу JS разработчиков в лесу Kenjuy27 Работа 0 18.07.2018 09:06
Диалог между HTML и внешним JS в контексте расширения GoogleChrome ev1lart Events/DOM/Window 0 26.04.2017 19:25
BackEnd/FrontEnd Developer (Native JS) Abab Работа 0 25.12.2016 10:56
JS <-> Server Js. Severtain Общие вопросы Javascript 1 05.11.2011 15:36
Картинка обрабатывается js 4yBaK Общие вопросы Javascript 10 11.09.2011 09:28