我有一个使 div 可见/隐藏的冗余过程,我相信提高效率的方法是使用循环。
目前我在文档中有很多 div,但我特别想处理 6 个。我有一系列对应于六个 div 的按钮。当人们单击按钮时,AI 想要显示(使可见)div A 并隐藏 Div 的 B、C、D、E、F。我的 javascript 是这样的:
<a href="#" onclick="ShowMe('A'); return false" />
<a href="#" onclick="ShowMe('B'); return false" />
<a href......etc />
<div id="A">blah...blah</div>
<div id="B">blah...blah</div>
<script type="java....">
function ShowHideDiv(DivName)
{
if(DivName == 'A')
{
var diva = document.getElementById('A');
div.style.visibility = 'visible';
var divb = document.getElementById('B');
div.style.visibility = 'hidden';
etc....
}
else if (DivName == 'B')
{
var diva = document.getElementById('A');
div.style.visibility = 'hidden';
var divb = document.getElementById('B');
div.style.visibility = 'visible';
etc...............
}
}
</script>
所以正如提到的循环的主要候选者,但我的问题是如何包含循环。例如,如果我的循环遍历整个文档对象,那么我会希望隐藏可见的 div,那么我该如何避免这种情况呢?
我有两个想法,但如果其他人有其他想法、想法、技术等。
给我的 div 一个非常奇怪的前缀,比如 ShowHide_A,然后我的循环可以遍历文档对象中的所有 div,解析它的名称,如果它没有前缀,则移动到下一个。如果我们有一个大文档并且脚本获取每个对象并解析然后检查名称,这当然会非常低效。
将有问题的 div 包装在父容器中,例如:
然后我的 javascript 可以包含在仅通过 DivParent 树的循环中。但是如果我的 div 位于文档模型中的不同位置怎么办?我是否将它们保留在 ParentDiv 和位置,然后它们属于 css 位置属性?
任何其他想法将不胜感激 JB