结合两个函数PureJS

如何将这两个功能合二为一?现在我有两个功能可以做同样的事情:关闭站点上的搜索窗口 - 按 Esc 和按某个 .

    searchOverlay.addEventListener('keydown', function(event){
        if(event.key === "Escape"){
            body.classList.remove('search-opened');
            event.stopPropagation();
        }
    });

    searchOverlay.addEventListener('click', function (e) {
        if (e.target.closest('.search-inner') === null) {
            body.classList.remove('search-opened');
            e.stopPropagation();
        }
    });
}

回答

您甚至可以简单地创建一个支持这两种情况的事件侦听器

function removeSearchOpenedClass(event) {
  if (event.key === "Escape" || !event.target.closest(".search-inner")) {
    body.classList.remove('search-opened');
    event.stopPropagation(); 
  }
}
searchOverlay.addEventListener('keydown', removeSearchOpenedClass)
searchOverlay.addEventListener('click', removeSearchOpenedClass)


以上是结合两个函数PureJS的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>