我可以从 text 或 textarea 之外的文本选择中获取 Javascript 事件吗?

     2023-05-07     219

关键词:

【中文标题】我可以从 text 或 textarea 之外的文本选择中获取 Javascript 事件吗?【英文标题】:Can I get a Javascript event from the selection of text outside of text or textarea? 【发布时间】:2010-12-19 23:26:30 【问题描述】:

我想知道用户何时使用 Javascript 在 html 页面中选择文本。文本不应是可编辑的。 onselect 事件似乎只适用于<textarea><input type="TEXT"> 标签。如果任一标签被禁用,则不会触发该事件。

有没有办法用这些标签解决这个问题?

有完全不同的方法吗?

【问题讨论】:

我不知道有什么方法可以按照您的要求进行操作。但是,如果您试图阻止人们从您的网站复制和粘贴文本,这是不可能的。 可能重复:***.com/questions/1741119/… 【参考方案1】:

当然,这里有一个例子:http://www.codetoad.com/javascript_get_selected_text.asp

使用您在此处看到的内容,您可以将事件绑定到文档正文的单击/释放事件,并检查是否有选择,以及选择多长时间以确定他们是否选择了任何文本。

*** 存档:

    What's the event fired when a user selects text on a page? Javascript to get Paragraph of Selected Text in WebPage

【讨论】:

这对使用键盘或浏览器编辑/上下文菜单进行的选择没有帮助。【参考方案2】:

您可以捕获mouseUp 事件,并检查是否使用window.getSelection() 选择了某些文本。

但是,此方法可能不兼容跨浏览器(window.getSelection())。

编辑:这是一个非常完整的例子,mouseUp 绑定:http://mark.koli.ch/2009/09/use-javascript-and-jquery-to-get-user-selected-text.html

【讨论】:

【参考方案3】:

以跨浏览器的方式做到这一点并不容易。在 IE 中,只有 select 事件适用于正文文本和表单输入,因此可以执行您想要的操作,但要检测用户何时以跨浏览器方式进行选择,您需要同时处理 keyupmouseup 事件。即使那样,您也不会检测到选择事件,例如用户使用“全选”菜单选项(通常在“编辑”和右键单击上下文菜单中找到)。因此,您只需定期轮询并检查选择对象的属性(通过 IE 中的window.getSelection()document.selection 获得)。

【讨论】:

如何在textarea中垂直居中文本?

】如何在textarea中垂直居中文本?【英文标题】:Howtoverticallycentertextintextarea?【发布时间】:2012-11-1305:02:28【问题描述】:有没有一种方法可以垂直居中在已知宽度和高度的textarea中输入的文本?我有一个固定大小的文本区域,... 查看详情

spark 的 TextArea 或 RichText 的内容

】spark的TextArea或RichText的内容【英文标题】:Contentofspark\'sTextAreaorRichText【发布时间】:2011-09-2204:11:58【问题描述】:是否可以从spark的TextArea或RichText中获取每一行的内容?我想要实现的是将textarea(或富文本)的内容拆分为行... 查看详情

AJAX .val() 或 .text() 不适用于 textarea?

】AJAX.val()或.text()不适用于textarea?【英文标题】:AJAX.val()or.text()doesnotworkwithtextarea?【发布时间】:2020-04-0101:18:51【问题描述】:我正在尝试使用AJAX请求将textarea数据发送到google表单,但.val()似乎不适用于textarea。我该如何解决... 查看详情

IE中的文本区域最大长度

】IE中的文本区域最大长度【英文标题】:TextareamaxlengthinIE【发布时间】:2012-02-1317:28:02【问题描述】:有没有办法从给定的keydown事件中判断出所有者input[type=text]或textarea在应用后会减少还是增加长度?背景:拥有一个HTML5站点(... 查看详情

textarea 的字段类型是啥?

】textarea的字段类型是啥?【英文标题】:WhatfieldTYPEfortextarea\'s?textarea的字段类型是什么?【发布时间】:2012-05-0412:03:49【问题描述】:我有一个表格,客户将在其中输入几个段落到不同的文本区域。我应该为字段类型选择varchar... 查看详情

如何从 textarea 中获取突出显示的文本位置?

】如何从textarea中获取突出显示的文本位置?【英文标题】:Howtogethighlightedtextpositionfromtextarea?【发布时间】:2020-06-0703:20:05【问题描述】:我想使用javascript获取选定的文本位置。例如,我有一个简单的文本区域。#input-textresize:n... 查看详情

从 textarea flex3 中保存空格和换行符

】从textareaflex3中保存空格和换行符【英文标题】:savespacesandnewlinesfromtextareaflex3【发布时间】:2012-08-2905:43:18【问题描述】:我有一个用户类型的文本区域,它的文本进入数据库。如何在数据库中为用户类型应用空格和换行符,... 查看详情

ExtJS,无法将我的文本区域滚动到底部

...我的文本区域滚动到底部【英文标题】:ExtJS,can\'tscrollmytextareatoitsbottom【发布时间】:2012-05-2120:24:44【问题描述】:我正在使用extjs4并且我有一个textarea可以在其中插入一些文本,滚动条默认设置在顶部,因此当文本超过textarea... 查看详情

material-ui 中的文本区域

】material-ui中的文本区域【英文标题】:TextAreainmaterial-ui【发布时间】:2018-03-0517:51:33【问题描述】:有人可以帮助我使用material-ui库将TextField个性化设置为TextArea吗?我没有找到任何可以将其个性化为TextArea的参数:https://github.c... 查看详情

我可以用 CSS 选择空的文本区域吗?

...以用CSS选择空的文本区域吗?【英文标题】:CanIselectemptytextareaswithCSS?【发布时间】:2011-10-2716:55:45【问题描述】:有没有一种方法可以让我选择一个文本区域,使得jQuery中的$(\'#id_of_textarea\').val()将是\'\'?我尝试使用:empty。我... 查看详情

从表单字段中删除单词的代码(代码片段)

...te("onchange","deleteValue()");functiondeleteValue()varweburl='http://';vartextarea=document.getElementById("43");vardata=textarea.value;textarea.value=textarea.value.replace(weburl.value,"");</script>任何人都可以提供一个关于如何使其工作的建议吗?答案您可以使用.bl... 查看详情

如何从 jquery 的文本区域中获取选定的文本? [复制]

...取选定的文本?[复制]【英文标题】:Howtogetselectedtextfromatextareainjquery?[duplicate]【发布时间】:2013-04-0820:10:07【问题描述】:如果我从文本区域中选择文本,我需要知道选择了哪个文本,例如“helloworld”如果我选择hello,我想看... 查看详情

jquery从textarea中获取随机单词

】jquery从textarea中获取随机单词【英文标题】:Jquerygetrandomwordsfromtextarea【发布时间】:2012-12-0307:18:26【问题描述】:我的问题很简单,但我不知道该怎么做。我有一个带有一些文本的文本区域,我想从文本中获取5个随机单词并... 查看详情

实现可调整大小的文本区域?

...调整大小的文本区域?【英文标题】:Implementingaresizabletextarea?【发布时间】:2010-09-1401:07:35【问题描述】:***如何这是他们自己推出的东西,还是我可以轻松附加到我网站上的文本区域的公开可用组件?我发现了这个问题,但... 查看详情

带有新闻帖子的文本区域 - SQL 插入(开始新行)

...闻帖子的文本区域-SQL插入(开始新行)【英文标题】:TextAreawithNewsPosts-SQLInserting(StartingNewLines)【发布时间】:2016-05-1722:47:03【问题描述】:我目前正在运行一个程序,该程序从SQL数据库中获取新闻帖子,然后将它们加载到用户... 查看详情

我可以设置 textarea 的调整大小抓取器的样式吗?

】我可以设置textarea的调整大小抓取器的样式吗?【英文标题】:CanIstyletheresizegrabberoftextarea?【发布时间】:2012-10-1901:54:45【问题描述】:我的设计师刚刚给了我带有样式调整大小抓取器的文本区域的设计。问题是:我可以设计... 查看详情

如何从 textarea 字段中提取电子邮件 ID

】如何从textarea字段中提取电子邮件ID【英文标题】:Howtoextracttheemailidfromtextareafield【发布时间】:2011-05-0211:04:39【问题描述】:我正在使用cakephp。我有用户粘贴数据的textarea字段,我使用tinymce插件来格式化文本。我已经警告用... 查看详情

如何清除焦点上的文本区域?

...如何清除焦点上的文本区域?【英文标题】:HowcanIclearatextareaonfocus?【发布时间】:2011-04-1309:22:11【问题描述】:我使用带有textarea的简单表单,当用户单击textarea时,我希望清除textarea的内容。这可能吗?【问题讨论】:您确定... 查看详情