Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/69.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切换元素';显示不工作_Javascript_Html_Css_Toggle - Fatal编程技术网

Javascript切换元素';显示不工作

Javascript切换元素';显示不工作,javascript,html,css,toggle,Javascript,Html,Css,Toggle,我已经做了几十次了,但由于某些原因,我不明白为什么单击#下拉按钮时#下拉列表div没有显示 <html> <head> <script type="text/javascript"> function toggleDropdown(optionalArg){ optionalArg = (typeof optionalArg == "undefined")?'defaultValue':optionalArg ele =

我已经做了几十次了,但由于某些原因,我不明白为什么单击#下拉按钮时#下拉列表div没有显示

<html>
<head>
<script type="text/javascript">
    function toggleDropdown(optionalArg){
        optionalArg = (typeof optionalArg == "undefined")?'defaultValue':optionalArg
        ele = document.getElementById("dropdown-list");
        //If optionalArg is 0 we want to hide it
        if(optionalArg == 0){
            ele.style.display=='none'
        }
        //If optionalArg is 1 we want to show it
        else if(optionalArg == 1){
            ele.style.display=='block';
        }
        //If optionalArg is NULL we want to toggle it's display
        else{
            if(ele.style.display=='none')
                ele.style.display=='block';
            else
                ele.style.display=='none';
        }
    }
</script>
    <style type="text/css">
        #dropdown-container{
            width:200px;
            border:1px solid black;
            overflow: hidden;
        }
        #dropdown-text {
            width:176px;
            float:left;
        }
        #dropdown-button {
            text-align:center;
            width:20px;
            border:2px outset black;
            float:left;
        }
        #dropdown-button:active {
            border:2px inset black;
        }
        #dropdown-list {
            display:none;
            width:200px;
            max-height:250px;
            background-color:#b0c4de;
            border:1px solid #cccccc;
            overflow:auto;
        }
    </style>
</head>
<body>
    <div id="dropdown-container">
        <div id="dropdown-label">
            <input id="dropdown-text" type="text" />
            <div id="dropdown-button" onclick="toggleDropdown();">V</div>
        </div>
        <div id="dropdown-list">
            <ul class="dropdown-ul">
                <li>Item 1</li>
                <li>Item 2</li>
                <li>Item 3</li>
            </ul>
        </div>
    </div>
</body>

功能切换下拉列表(可选参数){
optionalArg=(typeof optionalArg==“未定义”)?“默认值”:optionalArg
ele=document.getElementById(“下拉列表”);
//如果optionalArg为0,我们希望将其隐藏
如果(可选参数==0){
ele.style.display==“无”
}
//如果optionalArg为1,我们希望显示它
else if(可选参数==1){
ele.style.display=='block';
}
//如果optionalArg为空,我们希望切换它的显示
否则{
if(ele.style.display='none')
ele.style.display=='block';
其他的
ele.style.display=='none';
}
}
#下拉式容器{
宽度:200px;
边框:1px纯黑;
溢出:隐藏;
}
#下拉文本{
宽度:176像素;
浮动:左;
}
#下拉按钮{
文本对齐:居中;
宽度:20px;
边框:2件黑色;
浮动:左;
}
#下拉按钮:激活{
边框:2件镶嵌黑色;
}
#下拉列表{
显示:无;
宽度:200px;
最大高度:250px;
背景色:#b0c4de;
边框:1px实心#中交;
溢出:自动;
}
v
  • 项目1
  • 项目2
  • 项目3

应该很简单,但我认为现在已经晚了,我对这个简单的JS有点问题。谢谢你看它

使用相等运算符(
=
)而不是赋值(
=
):

应该是

        if(ele.style.display=='none')
            ele.style.display='block';
        else
            ele.style.display='none';

使用相等运算符(
=
)代替赋值(
=
):

应该是

        if(ele.style.display=='none')
            ele.style.display='block';
        else
            ele.style.display='none';