1 回答
TA贡献1841条经验 获得超3个赞
你的$(document).ready(function()
方法没闭合,我试了下,在你的代码后面加上});
闭合后,是可以工作的,点击后显示隐藏的东西。
(由于你没贴样式,所以我自己猜着给hide
写了个display:none
,但是我发现你的 id="lyt"
是用的style="display: none"
,你直接给它弄个class="hide"
吧)
代码如下:
<script>
$(document).ready(function(){
$("#ma").click(function(e){
e.stopPropagation();
$("#lyt").removeClass('hide');
});
$(".cle").click(function(){
$("#lyt").addClass('hide');
});
$('.layout').click(function() {
if (!$("#lyt").hasClass("hide")) {
$("#lyt").addClass("hide");
}
});
$("#lyt").click(function (e) {
e.stopPropagation();//阻止事件向上冒泡
});
});
</script>
由于你没贴样式,所以我大概猜着测了下:
页面上默认是只有 “收藏” 栏
id="ma"
点击收藏栏,显示
id="lyt"
,这里面包含了class="layout"
和class="tc"
,而class="tc"
里还包含了class="cle"
点击
class="cle"
,id="lyt"
会隐藏点击
class="layout"
,id="lyt"
也会隐藏,没弄懂的是这里你为啥会用个判断,layout是包含在 lyt 里的,只可能 lyt 显示了,才能看到 layout,才能点到它吧。。。所以,也就是 layout 能看到的时候,应该是 lyt 没有hide
样式的时候啊,干嘛还判断
大概是由于没有样式,也不太明白你页面上那些都是干嘛的,所以可能没理解好吧。你把 ready
方法闭合了,如果还有问题,你可以直接贴一个页面截图。
添加回答
举报