gpt4 book ai didi

javascript - this.id 在 ie 中不工作

转载 作者:行者123 更新时间:2023-11-30 10:36:47 25 4
gpt4 key购买 nike

我一直在使用 JavaScript 组合 Accordion 式左导航,但遇到以下代码在 Chrome 和 Firefox 中有效但在 IE 中无效的问题。

function navClick(clickedDD){
var numDD = document.getElementsByClassName('navDropdown');
var numArrow = document.getElementsByClassName('navUnfolded');
var selectedDD = document.getElementById('dd0' + clickedDD);
var arrow = document.getElementById('arrow0' + clickedDD);
if (selectedDD.style.display == 'none') {
for (var i = numDD.length - 1; i >= 0; i--) {
numDD[i].style.display = 'none';
}
}
if (arrow.className == 'navFolded') {
for (var i = numArrow.length - 1; i >= 0; i--) {
numArrow[i].className = 'navFolded';
}
}
if (selectedDD.style.display == 'none') {
selectedDD.style.display = 'block';
arrow.className = 'navUnfolded';
} else {
selectedDD.style.display = 'none';
arrow.className = 'navFolded';
}
}

我不确定是什么阻止了它的运行,但我怀疑它是我在 onclick 中使用的“this.id”。

<div id="1" onclick="navClick(this.id);">Content</div>

我对 JavaScript 比较陌生,如果这对了解有帮助的话。基本上,此函数首先查看是否显示了单击的 div,如果没有,则在继续之前将所有 div 的显示设置为无。如果它被显示,它什么也不做,因为下一位将处理它。对于带有变化的箭头图像的 div,也有类似的规则。然后,如果未显示 div,则将其设置为“阻止”,否则将其设置为“无”,这允许我打开和关闭单个菜单 div,而无需打开/关闭其他菜单。

我正在使用 onclick 函数收集的 id 来控制具有不同 id 的 div,如函数顶部变量底部所示。也许这就是 IE 变得敏感的地方。

感谢任何帮助。

最佳答案

在您的元素上,尝试将 ID 放在引号中:

<div id = '1' onClick="navClick(this.id);">

您也可以尝试使用 javascript 的“警报”功能来找出数据在 IE 中的样子:

alert(selectedDD); 

关于javascript - this.id 在 ie 中不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13571627/

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