gpt4 book ai didi

javascript - 使用 vanilla javascript 切换模式

转载 作者:行者123 更新时间:2023-11-27 23:04:22 29 4
gpt4 key购买 nike

我习惯于使用 jQuery,但我正在尝试回到普通的 javascript。我有一个链接,单击该链接将显示帐户模式。

我还想在单击“模态可见”时更改模态的类。这按预期工作,但是当我再次单击链接关闭模式时,我需要将该类更改回“模式隐藏”。

我想知道是否有人可以帮助我。也许它需要一个切换开关?

var accountModal = document.getElementById("account-modal");
document.querySelector('#account-photo').addEventListener('click', function(e) {
e.preventDefault();
accountModal.classList.add('modal-visible');
accountModal.classList.remove('modal-hidden');
accountModal.setAttribute('aria-hidden', 'false');
});

<a id="account-photo" href="/customer" tabindex="0" aria-expanded="false">Account</a>
<div id="account-modal" class="modal-visible" aria-label="Account Information" aria-hidden="false">Account Info</div>

最佳答案

如果我们假设它总是开始关闭,那么这是一种方法:

document.querySelector('#account-photo').addEventListener('click', function() {var is_visible = false; return function(e) {
e.preventDefault();
if(!is_visible) {
accountModal.classList.add('modal-visible');
accountModal.classList.remove('modal-hidden');
accountModal.setAttribute('aria-hidden', !is_visible);
is_visible = true;
} else {
accountModal.classList.remove('modal-visible');
accountModal.classList.add('modal-hidden');
accountModal.setAttribute('aria-hidden', !is_visible);
is_visible = false;
}
}});

此方法基本上充当手动编码的切换。

关于javascript - 使用 vanilla javascript 切换模式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36729208/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com