检测文本区域中的“取消选择”事件

时间:2012-03-13 23:28:38

标签: javascript jquery

jQuery具有.select()方法,可以在文本区域中选择文本时执行函数。

不幸的是,当用户删除选择时,没有相应的.deselect()方法来执行函数。

如何检测用户何时取消选择文本(例如,通过键入,单击或散焦)?

1 个答案:

答案 0 :(得分:4)

$("textarea").select(function() {
    //do something here
});

$("textarea").on("blur focus keydown mousedown", function() {
    //do something else here
});​

.on用于jquery 1.7及更高版本。在此之前,您可以使用.delegate.live

http://jsfiddle.net/s29Vb/4/

这个例子简化了。您可以使用选择器而不是$("textarea")更具体。

另一个例子,如果你想在blur focus keydown mousedown上做某事,只要首先选择了文字。

http://jsfiddle.net/s29Vb/5/