Javascript jQuery下拉菜单链接不工作
我有一个jQuery下拉菜单,但现在我的链接不起作用:Javascript jQuery下拉菜单链接不工作,javascript,jquery,Javascript,Jquery,我有一个jQuery下拉菜单,但现在我的链接不起作用: $(".child a").off("click").click(function (e) { e.stopImmediatePropagation(); return true; }); $(文档).ready(函数(){ 功能可见($e){ 如果($e.is(':visible')){ 返回true; }否则{ 返回false; } } $('.nav.parent').find('ul').hide(); $(文档).de
$(".child a").off("click").click(function (e) {
e.stopImmediatePropagation();
return true;
});
$(文档).ready(函数(){
功能可见($e){
如果($e.is(':visible')){
返回true;
}否则{
返回false;
}
}
$('.nav.parent').find('ul').hide();
$(文档).delegate('.parent',click',function(){
变量$this=$(this),
$child=$this.children('ul');
如果(可见($child)){
$child.slideUp();
}否则{
$child.slideDown();
}
返回false;
});
});代码>
媒体
- 视频
音乐
相册
事件冒泡是阻止链接使用返回false的原因代码>您需要的是:event.stopImmediatePropagation()
:
只需添加以下代码即可使其正常工作:
$(".child a").off("click").click(function (e) {
e.stopImmediatePropagation();
return true;
});
片段:
$(文档).ready(函数(){
功能可见($e){
如果($e.is(':visible')){
返回true;
}否则{
返回false;
}
}
$('.nav.parent').find('ul').hide();
$(文档).delegate('.parent',click',function(){
变量$this=$(this),
$child=$this.children('ul');
如果(可见($child)){
$child.slideUp();
}否则{
$child.slideDown();
}
返回false;
});
$(“.child a”)。关闭(“单击”)。单击(函数(e){
e、 停止即时复制();
返回true;
});
});代码>
媒体
- 视频
音乐
相册
尝试添加此代码
$(".child > a").click(function(e) {
e.stopPropagation();
})
$(文档).ready(函数(){
功能可见($e){
如果($e.is(':visible')){
返回true;
}否则{
返回false;
}
}
$('.nav.parent').find('ul').hide();
$(“.child>a”)。单击(函数(e){
e、 停止传播();
})
$(文档).delegate('.parent',click',function(){
变量$this=$(this),
$child=$this.children('ul');
如果(可见($child)){
$child.slideUp();
}否则{
$child.slideDown();
}
返回false;
});
});代码>
媒体
- 视频
音乐
相册
Anirban和Praveen Kumar的回答都很有效。但由于Anirban是最短的,从外观上看(在浏览菜单和点击项目时)也是最快的