首页 > 解决方案 > jQuery动态添加元素在单击时发出警告单击动态添加的 <select>(使用 jQuery)元素时,系统会提示我违反警告:[Violation] 向阻止滚动的“鼠标滚轮”事件添加了非被动事件侦听器。考虑将事件处理程序标记为“被动”以使页面更具响应性。下面是代码: codepen 为什么我会收到这个警告,因为我没有将任何类型的事件侦听器绑定到那些新的 <select> 元素?有没有办法避免这种情况?谢谢你!如何在 .gitcongfig 命令中管理目录名称中的空格?

问题描述

标签: jqueryhtml

解决方案


看起来有一个新的被动选项可以传递给事件处理程序,这将改善滚动并消除警告。这里有更多信息

示例实现:

$(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>


推荐阅读