点击其他地方时需要关闭下拉菜单
need to close drop down on clicking on elsewhere
Html:
<div id="contentTitle">
<span class="btnShare">
<a href="#">Share</a>
<ul>
<li><a href="#">Post to Facebook</a></li>
<li><a href="#">Email Link</a></li>
<li><a href="#">Copy Link</a></li>
<li><a href="#">Print</a></li>
</ul>
</span>
</div>
Javascript:
$(document).ready(function(){
var shnum = 0;
$('#contentTitle .btnShare a').click(function(){
if(shnum==0) {
$('#contentTitle .btnShare ul').css('display','block');
shnum = 1;
}
else {
$('#contentTitle .btnShare ul').css('display','none');
shnum = 0;
}
});
});
单击"共享"锚点标记时,要显示/隐藏的上述代码下拉列表。我需要关闭下拉菜单,当用户点击其他地方时。上面的代码不支持"$("body"(.click"函数。请帮忙。
$(document).ready(function(){
var shnum = 0;
$('#contentTitle .btnShare a').click(function(){
if(shnum==0) {
$('#contentTitle .btnShare ul').css('display','block');
shnum = 1;
}
else {
$('#contentTitle .btnShare ul').css('display','none');
shnum = 0;
}
});
$('#contentTitle .btnShare a').blur(function(){
$('#contentTitle .btnShare ul').css('display','none');
shnum = 0;
});
});
此代码将执行以下操作:
$(document).click(function(e){
if (!$('#contentTitle .btnShare a').is(e.target) && !$('#contentTitle .btnShare ul').is(e.target) && $('#contentTitle .btnShare ul').has(e.target).length === 0){
$('#contentTitle .btnShare ul').css('display','none');
shnum = 0;
}
});
相关文章:
- 为什么引导程序下拉菜单只有在包含bootstrap-responsive.css时才起作用
- Javascript-悬停时的Bootstrap下拉菜单打开子菜单的所有菜单级别
- 使自动完成可搜索下拉菜单don'我不想在点击搜索时显示列表
- JS在选择下拉菜单打开时创建延迟
- 嵌套在表单中的引导下拉菜单:输入时选项卡索引中断
- 选择单选按钮或下拉菜单项时自动更新PHP变量
- 单击下拉菜单按钮时引导打开链接
- 当客户端的下拉菜单触发时,如何对特定列进行排序
- 如何在Bootstrap select中的下拉菜单关闭时触发事件,并在Backbone.js中进行多选
- 在Angular中,当一个选项被下拉菜单选中时,如何修改一个对象
- 下拉菜单关闭时,我点击它(任何地方)
- 如何防止下拉菜单关闭时,用户点击进入它
- 防止物质化下拉菜单关闭时,点击它
- 我怎么能防止下拉菜单隐藏时,点击弹出触发从下拉菜单
- 当选择下拉菜单选项时,需要填充多个文本字段
- 当JQuery-Select2下拉菜单打开时,单击事件被阻止.需要点击两次才能触发点击事件
- 在哪里编写脚本,在改变下拉菜单值时立即触发
- 使下拉菜单消失时,点击任何东西,但菜单
- 下拉菜单关闭时,我悬停在链接
- 我如何编写一个函数,只有当用户与UI中的下拉菜单交互时才会执行,而不是从后端更新模型