有没有办法检查特定元素是否被点击?

时间:2011-01-08 12:12:26

标签: jquery javascript-events

也许我的问题听起来有点泛泛,所以让我更清楚。

我有一个隐藏在模糊上的textarea,被另一个div替换。更具体地说,上面的textarea包含markdown代码,div包含该代码的解析版本。

现在,我正在尝试在textarea的顶部添加一个格式化工具栏,但当然,当我点击它时,模糊事件被触发并且textarea被隐藏,这根本不方便。

所以我的问题是,是否有可能仅在单击工具栏时阻止模糊默认行为,如果是,那么最好的方法是什么。

非常感谢您的时间:)

1 个答案:

答案 0 :(得分:1)

编辑:我以前的解决方案没有削减它,所以让我们尝试别的东西。我并不喜欢绑定document click事件,但在这种情况下,它可能是最好的解决方案,因为它似乎正在编写某种WYSIWYG编辑器。您可以调整它以使用.one代替。

$(document).click(function(e){
    if ($(e.target).closest("#container").length == 0) {
        // Target that was clicked is not inside the container, so we can hide or replace the textarea
        $("textarea").hide();
    }
});

您可以在jsFiddle上试试这个。