Materializecss выберите двойной щелчок для переключения - PullRequest
2 голосов
/ 01 мая 2019

Я использую MaterializeCSS для создания выпадающего меню.На ноутбуке Mac выпадающий список работает нормально (протестировано в Safari и FireFox, а также в IE и Chrome через browserling.com).Однако, когда я просматриваю веб-сайт с компьютера с Windows (IE и Chrome), мне всегда приходится дважды щелкать, чтобы переключать выпадающий список.Я не понимаю, почему эта проблема происходит.Я был бы признателен, если кто-нибудь может указать на конкретную проблему с кодом, как указано ниже:

  <div class="dropdown-div">
    <div class="input-field">
      <select>
        <option value="1" class="dropdown-text"><a class="dropdown-text-default" data-url="#General">General</a></option>
        <option value="2"><a class="dropdown-text" data-url="#Option1">Option1</a></option>
        <option value="3"><a class="dropdown-text" data-url="#Option2">Option2</a></option>
        <option value="4"><a class="dropdown-text" data-url="#Option3">Option3</a></option>
        <option value="5"><a class="dropdown-text" data-url="#Option4">Option4</a></option>
      </select>
    </div>
  </div>


  <script src="https://cdnjs.cloudflare.com/ajax/libs/materialize/0.99.0/js/materialize.min.js"></script>
  <script type="text/javascript">
  $(document).ready(function() {
    $('select').material_select();
  });
  </script>

Пожалуйста, найдите документацию от MaterializeCSS здесь .

1 Ответ

2 голосов
/ 23 июня 2019

Это ошибка регрессии в Chrome 73. Для решения проблемы используйте следующий код: (Это единственное решение, которое я смог найти.)

$('select').material_select();
document.querySelectorAll('.select-wrapper').forEach(t => t.addEventListener('click', e=>e.stopPropagation()))
...