再会!该脚本适用于除 IE 之外的任何地方。帮助我理解。他不喜欢什么?
const buttons = document.querySelectorAll(`button[data-modal-trigger]`);
for(let button of buttons) {
modalEvent(button);
}
function modalEvent(button) {
button.addEventListener('click', () => {
const trigger = button.getAttribute('data-modal-trigger');
const modal = document.querySelector(`[data-modal=${trigger}]`);
const contentWrapper = modal.querySelector('.content-wrapper');
const close = modal.querySelector('.close');
close.addEventListener('click', () => modal.classList.remove('open'));
modal.addEventListener('click', () => modal.classList.remove('open'));
contentWrapper.addEventListener('click', (e) => e.stopPropagation());
modal.classList.toggle('open');
});
}
完整的例子在这里
以下是我从代码中 IE 不支持的内容中发现的内容:
var
.这是修改后的代码:
以及 jsfiddle 上的完整代码: https ://jsfiddle.net/wur8gnpe/4/
的确,动画现在在那里无法正常工作,但您需要查看浏览器的 css 支持。