Динамически добавленные элементы jQuery выдают предупреждение при нажатии

#jquery #html

#jquery #HTML

Вопрос:

При щелчке динамически добавляемых <select> (с помощью jQuery ) элементов мне предлагается предупреждение о нарушении:

[Нарушение] Добавлен непассивный прослушиватель событий для события mousewheel, блокирующего прокрутку. Подумайте о том, чтобы пометить обработчик событий как «пассивный», чтобы сделать страницу более отзывчивой.

Вот код: codepen

Почему я получаю это предупреждение, поскольку я не привязываю какие-либо прослушиватели событий к этим новым <select> элементам? И есть ли способ избежать этого?

Спасибо!

Комментарии:

1. Я не вижу никаких ошибок

2. @Hybrid нажмите «Добавить выбор», а затем щелкните по одному из <select> элементов. Только на этом этапе выдается запрос о нарушении

3. Я сделал это, и до сих пор не вижу ошибок. Для справки я использую новейшую версию Chrome

4. Я тоже, но я также получаю предупреждение…

5. Вы искали предупреждение, много информации о нем….

Ответ №1:

Похоже, что появилась новая пассивная опция, которую можно передать обработчикам событий, что улучшит прокрутку и отключит предупреждение. Вот немного больше информации.

Пример реализации:

 $(document).ready(function(){
    var x = 5;

    document.querySelector('#add-select').addEventListener('click', function (e) {
    	for(var n = 0; n < x;    n) {
        $('.dynamic-select').append('<div class="s"><select><option value="'   n   '">'   n   '</option></select></div>');
			}
    }, {passive: true})
});  
 <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div>
<button type="button" id="add-select">Add Select</button>
</div>

<div class="dynamic-select"></div>  

Комментарии:

1. спасибо за ваш ответ, но, к сожалению, ошибка продолжает появляться: (