可单击下拉菜单javascript

可单击下拉菜单javascript,javascript,jquery,html,drop-down-menu,clickable,Javascript,Jquery,Html,Drop Down Menu,Clickable,我使用JavaScript在网页中创建了3个可点击的下拉菜单按钮。当我点击一个按钮时,脚本运行良好。我可以看到显示了以下菜单。当我按下另一个按钮时,将显示以下菜单。但是,以前的菜单仍然存在 这是我的剧本。希望有人能帮助我。谢谢大家! <script type="text/javascript" > $(document).ready(function() { $(".account").click(function() { var X = $(this).a

我使用JavaScript在网页中创建了3个可点击的下拉菜单按钮。当我点击一个按钮时,脚本运行良好。我可以看到显示了以下菜单。当我按下另一个按钮时,将显示以下菜单。但是,以前的菜单仍然存在

这是我的剧本。希望有人能帮助我。谢谢大家!

<script type="text/javascript" >
$(document).ready(function() {

    $(".account").click(function() {
        var X = $(this).attr('id');
        if (X == 1) {
            $(".submenu").hide();
            $(this).attr('id', '0');
        } else {
            $(".submenu").show();
            $(this).attr('id', '1');
        }

    });

    //Mouse click on sub menu
    $(".submenu").mouseup(function() {
        return false
    });

    //Mouse click on my account link
    $(".account").mouseup(function() {
        return false
    });

    //Document Click
    $(document).mouseup(function() {
        $(".submenu").hide();
        $(".account").attr('id', '');
    });
});
</script> 

// CSS

.dropdown
{
color:#000;
margin: 0px 22px 0 0;
width: 300px;
height: 30px;
text-align:center;
}
.submenu
{
background:#FFF ;
position: absolute;
top: 118px;
left: 515px;
z-index: 100;
width: 250px;
display: none;
border-radius: 6px;
border: outset 2px #0066FF;
box-shadow: 0 0px 0px rgba(0, 0, 0, 0.05);
}

.dropdown li a
{
color:#555555;
display: block;
font-family: arial;
font-weight: bold;
padding: 6px 15px;
cursor: pointer;
text-decoration:none;
margin-top:-5px;
}

.dropdown li a:hover
{
background:#155FB0;
color: #FFFFFF;
text-decoration: none;
}
a.account
{
font-size: 18px;
line-height: 10px;
color: #000;
border: ridge 2px #0066FF;
position: absolute;
z-index: 110;
display: block;
padding: 11px 0 0 0px;
height: 20px;
width: 300px;
margin: 0px 0 0 0px;
text-align:center;
text-decoration: none;
background: url(images-new/arrow.png) 275px 9px no-repeat;
cursor:pointer;
}
.root
{
list-style:none;
margin:0px;
padding:0px;
font-size: 11px;
padding: 11px 0 0 0px;
border-top:1px solid #dedede;
}

// html

<div class="dropdown">
<a class="account" >My Account</a>

<div class="submenu">
<ul class="root">
<li ><a href="#Dashboard" >Dashboard</a></li>
<li ><a href="#Profile" >Profile</a></li>
<li ><a href="#settings">Settings</a></li>
<li ><a href="#feedback">Send Feedback</a></li>
</ul>
</div>

</div>

$(文档).ready(函数(){
$(“.account”)。单击(函数(){
var X=$(this.attr('id');
如果(X==1){
$(“.submenu”).hide();
$(this.attr('id','0');
}否则{
$(“.submenu”).show();
$(this.attr('id','1');
}
});
//鼠标单击子菜单
$(“.submenu”).mouseup(函数(){
返回错误
});
//鼠标单击我的帐户链接
$(“.account”).mouseup(函数(){
返回错误
});
//文件点击
$(文档).mouseup(函数(){
$(“.submenu”).hide();
美元(“.account”).attr('id','');
});
});
//CSS
.下拉列表
{
颜色:#000;
利润率:0px22px0;
宽度:300px;
高度:30px;
文本对齐:居中;
}
.子菜单
{
背景:#FFF;
位置:绝对位置;
顶部:118px;
左:515px;
z指数:100;
宽度:250px;
显示:无;
边界半径:6px;
边界:起点2px#0066FF;
盒影:0px0pxRGBA(0,0,0,0.05);
}
.下拉列表李a
{
颜色:#555555;
显示:块;
字体系列:arial;
字体大小:粗体;
填充:6px 15px;
光标:指针;
文字装饰:无;
页边顶部:-5px;
}
.下拉列表李a:悬停
{
背景#155FB0;
颜色:#FFFFFF;
文字装饰:无;
}
a、 帐目
{
字号:18px;
线高:10px;
颜色:#000;
边界:山脊2px#0066FF;
位置:绝对位置;
z指数:110;
显示:块;
填充:11px 0 0px;
高度:20px;
宽度:300px;
保证金:0px 0 0px;
文本对齐:居中;
文字装饰:无;
背景:url(imagesnew/arrow.png)275px 9px无重复;
光标:指针;
}
.根
{
列表样式:无;
边际:0px;
填充:0px;
字体大小:11px;
填充:11px 0 0px;
边框顶部:1px实心#dedede;
}
//html


  • 我个人建议将JS和CSS结合使用

    应使用活动类隐藏和显示元素:

    //JS
    $('.menu a').on('click', function({
        $('.menu a').removeClass('active');
        $(this).addClass('active');
    });
    
    // CSS
    .active .submenu {
        display: block;
    }
    

    欢迎来到SO。如果没有相应的HTML和CSS,您希望社区如何解决这个问题。。?a会更好。信息中似乎缺少一些东西。此代码引用名为.account的类和名为.submenu的类。我们无法判断每个类中有多少dom项。更改id属性的mouseup和mousedown事件令人困惑。。。你想在那里做什么?