div中的任何标记元素都在关闭它

时间:2014-03-04 18:20:57

标签: javascript jquery

我已附上:http://jsfiddle.net/75JaR/12/

这应该做的是每个link应该通过点击closeable外部来打开一个div的div。这要归功于 stackoverflow 上的一些帮助。

但是,如果我在div中添加除直文之外的任何内容,点击它就会关闭它。

我无法在p, a, span中包装文字,甚至不能使用image,有人可以告诉我为什么会这样吗?

编辑:如果您尝试点击已标记的文字,它将关闭

      $('.trigger').click(function (e) {
    e.stopPropagation();
    $('.header-menu-container').hide();
    $(this).next('.header-menu-container').slideDown();
});

$(document).click(function (e) {
    var $this = $(e.target);
    if ($this.hasClass("header-menu-container")) return;
    if ($this.hasClass("header-menu-contents")) return;
    $('.header-menu-container').slideUp();
});

1 个答案:

答案 0 :(得分:0)

您需要检查元素父div是否没有类

 if ($this.hasClass("header-menu-container")) return;
if ($this.hasClass("header-menu-contents")) return;

如果您点击<p><p>

<p>没有类,这就是它关闭的原因

检查这个小提琴

fiddle