JavaScript:单击不进行切换<;a>;链接
这是我的代码:JavaScript:单击不进行切换<;a>;链接,javascript,toggle,Javascript,Toggle,这是我的代码: 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.sty
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";
}
}
);
包括一个切换功能,工作得很好。但另外,我需要这样一个命令:
如果点击了结构内部的
链接,则不应切换
我的想法是这样的:
var allLinks = document.links;
allLinks[i].onclick = function () {
cross_one.style.display = "none"; };
但我不知道该把它归给谁。我不确定我是否理解你的问题,但你可能在寻找这样的问题: 在HTML中,添加如下链接
<a href="#!" onclick = "doNotToggle()"> My Link </a>
单击链接将阻止eventListener函数执行任何操作。谢谢!一般来说,这是可行的。如果单击链接,现在没有切换。但是:如果我在结构内部的某个位置单击链接不在的位置,它应该会再次切换。然后,您可以添加另一个fonction toggle(),设置变量toggle=true,并在需要时调用它(不确定我是否正确理解)
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";
}
}
});