Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/468.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 扩展<;UL>&书信电报;李>;工作正常,但如果有链接,则默认情况下也会单击,然后展开,但实际情况并非如此_Javascript_Css - Fatal编程技术网

Javascript 扩展<;UL>&书信电报;李>;工作正常,但如果有链接,则默认情况下也会单击,然后展开,但实际情况并非如此

Javascript 扩展<;UL>&书信电报;李>;工作正常,但如果有链接,则默认情况下也会单击,然后展开,但实际情况并非如此,javascript,css,Javascript,Css,var-tree=document.querySelectorAll('ul.tree a:not(:last child)'); 对于(var i=0;i

var-tree=document.querySelectorAll('ul.tree a:not(:last child)');
对于(var i=0;i
ul.tree li{
列表样式类型:无;
位置:相对位置;
}
李树{
显示:无;
}
ul.tree li.open>ul{
显示:块;
}
李树{
颜色:黑色;
文字装饰:无;
}
李:以前{
高度:1米;
填充:0.1米;
字体大小:.8em;
显示:块;
位置:绝对位置;
左:-1.3em;
顶部:2米;
}
不是(最后一个孩子):在之前{
内容:“+”;
}
不是(:最后一个孩子):在之前{
内容:'一';;
}

我将在列表元素上添加单击和图标,而不是锚定标记。如果将其添加到锚定标记中,将触发对URL的单击

//对于每个可展开的列表项,在单击时切换打开的类
var expandableArray=Array.from(document.getElementsByClassName(“expand”);
for(expandableArray中的var索引){
var list=expandableArray[index];
list.addEventListener('click',函数(e){
e、 currentTarget.classList.toggle('open');
});
}
ul{
列表样式:无;
}
李阿{
文字装饰:无;
颜色:黑色;
字体系列:verdana;
}
李:不是(.open)ul{
/*使用类打开和关闭列表*/
显示:无;
}
李:在之前{
/*在列表标签上设置图标*/
内容:“+”;
/*+图标不是锚定标记,因此手动设置光标*/
光标:指针;
}
李。展开。打开:之前{
内容:“-”;
}

这是因为您将+作为锚定标记的一部分。请尝试将其作为
li
标记的一部分。非常感谢您的回复。在这样做的过程中,我面临着一些问题。你能给我看一个演示吗?为什么在标题链接中需要
href
target
?如果它们根本不是链接,你就不会有问题是的,实际上我需要链接与每一个LI UL相关联,那么只有我的要求才能满足。如果标题LI没有href,那么就不会有任何问题,但我需要它。这就是为什么在这次扩张/崩溃中我面临问题的原因。非常感谢randy!这是我想要的输出。鞠躬!我只有一个问题!我可以在开始时只给出一个类名吗?
    ,而不是在每个可扩展的列表中,然后javascript将按照我在问题中发布的方式处理其余的类名?@SurajitMitra,这将成为令人讨厌的代码,但这确实是可能的。我现在没有时间回答这个问题。如果这个答案对你有帮助,请接受它,并将你的问题作为一个新问题来提问。