这是我的代码:
var works = document.querySelector('#works');
var cross_one = document.querySelector('#cross_one');
var works_navigation = document.querySelector('#works_navigation');
works.addEventListener('click', function (event) {
if (cross_one.style.display == "") {
cross_one.style.display = "none";
works_navigation.style.display = "block";
} else {
cross_one.style.display = "";
works_navigation.style.display = "none";
}
}
);
包括一个切换功能,效果很好。但此外,我需要这样的命令:
如果点击了结构内部的<a>
链接,则不应切换。
我的想法是这样的:
var allLinks = document.links;
allLinks[i].onclick = function () {
cross_one.style.display = "none"; };
但我不知道该包括谁。
答案 0 :(得分:0)
不确定我是否理解您的问题,但是您可能正在寻找这样的东西: 在您的HTML中,添加
之类的链接<a href="#!" onclick = "doNotToggle()"> My Link </a>
和您的JS
var toggle = true;
function doNotToggle() {
toggle = false;
}
var works = document.querySelector('#works');
var cross_one = document.querySelector('#cross_one');
var works_navigation = document.querySelector('#works_navigation');
works.addEventListener('click', function (event) {
if (toggle) {
if (cross_one.style.display == "") {
cross_one.style.display = "none";
works_navigation.style.display = "block";
} else {
cross_one.style.display = "";
works_navigation.style.display = "none";
}
}
});
并单击链接将阻止eventListener函数执行任何操作。