jquery - 如果用户在其外部单击,则隐藏文本区域,但在选择文本后鼠标离开它时保持可见

标签 jquery html

我有一个文本区域,如果用户在其外部单击它应该隐藏,如果他在文本区域内部单击则它应该保持可见。

问题是当用户选择文本区域的文本并将鼠标放在它外面时,文本区域被隐藏并且他不能再复制文本。

我该如何解决这个问题?

Live JSFiddle

HTML:

<span>Show textarea</span>

<div>
    <textarea>Text in textarea</textarea>
</div>

J查询:

$("span").on("click", function () {
    $("textarea").show();
});


$(document).mouseup(function (e) {
    var container = $("div");

    if (container.has(e.target).length === 0) {
        $("textarea").hide();
    }
});

CSS:

textarea {
    position:absolute;
    right:10px;
    bottom:10px;
    display:none;
}

最佳答案

只需使用 mousedown() 事件即可

Fiddle

关于jquery - 如果用户在其外部单击,则隐藏文本区域,但在选择文本后鼠标离开它时保持可见,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16460636/

相关文章:

javascript - 单击按钮不再触发

jquery - 使用 jquery 获取没有注释行的 HTML 内容

javascript - 使用 Javascript 更改嵌套跨度类

jquery - 无法设置 jquery 的数据表插件 10.1 的数据表宽度

html - 神秘的抱右翼网页

html - 创建一个只向任一方向 float 的类有什么好处?

jquery - 如何在行中显示数据看起来像列

php - 模态不集中

javascript - JQuery UI Sortable - 将 html 可排序元素的拖动区域限制为特定子元素

jquery - 在临时 div 包装器中包装短代码以进行编辑,然后在保存内容之前将其删除