Материализовать модальное событие не будет - PullRequest
1 голос
/ 17 января 2020

У меня есть это в моем скрипте. js file

$(document).ready(function () {
  $('.modal').modal({
      onOpenStart() {
          console.log("Open Start");
      },
      onOpenEnd() {
          console.log("Open End");
      },
      onCloseStart(){
          console.log("Close Start");
      },
      onCloseEnd(){
          console.log("Close End");
      },
  });
});

И это мой модал и кнопка:

 <script src="./app-assets/js/custom/custom-script.js"></script>
 <ul id="dropdown2" class="dropdown-content">
 <li><a href="#" class="modal-trigger" data-target="modal1">Anschauen</a></li>

<!-- Modal Structure -->
<div  id="modal1" class="modal">
    <div class="modal-content">
      <h4>Arbeitsplan bearbeiten</h4>
            <!-- Form Advance -->
            <div class="col s12 m12 l12">
                    <div class="card-content">
                    </div>
            </div>
    </div>
<div class="modal-footer">
    <a href="#!" class="modal-action modal-close waves-effect waves-red btn-flat ">Abbrechen</a>
      <a href="#!" class="modal-action modal-close waves-effect waves-green btn-flat ">Bestätigen</a>
</div>
</div>

Каким-то образом функция не будет вызвана, я нажимаю на модальный и модальный открывается или закрывается. Так что я ничего не вижу в консоли вообще ...

Спасибо

1 Ответ

0 голосов
/ 17 января 2020

Ваш синтаксис неверен. Вам необходимо предоставить функции для свойств с этими именами. Попробуйте это:

jQuery(function($) {
  $('.modal').modal({
    onOpenStart: function() {
      console.log("Open Start");
    },
    onOpenEnd: function() {
      console.log("Open End");
    },
    onCloseStart: function() {
      console.log("Close Start");
    },
    onCloseEnd: function() {
      console.log("Close End");
    },
  });
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/materialize/1.0.0/css/materialize.min.css">
<script src="https://cdnjs.cloudflare.com/ajax/libs/materialize/1.0.0/js/materialize.min.js"></script>

<ul id="dropdown2">
  <li><a href="#" class="modal-trigger" data-target="modal1">Anschauen</a></li>
</ul>

<div id="modal1" class="modal">
  <div class="modal-content">
    <h4>Arbeitsplan bearbeiten</h4>
    <div class="col s12 m12 l12">
      <div class="card-content">
      </div>
    </div>
  </div>
  <div class="modal-footer">
    <a href="#!" class="modal-action modal-close waves-effect waves-red btn-flat ">Abbrechen</a>
    <a href="#!" class="modal-action modal-close waves-effect waves-green btn-flat ">Bestätigen</a>
  </div>
</div>
...