JavaScript 选中文字并响应获取的实现代码


Posted in Javascript onAugust 28, 2011

本人不怎么会写JS,但是会搜索,这里找到了些别人写好的东西:

select(document, tanchu); 
/*=select[[ 
* 
* 跨浏览器选中文字事件 
* @param 
* object o 响应选中事件的DOM对象,required 
* function fn(sText,target,mouseP)选中文字非空时的回调函数,required 
* |-@param 
* |-sText 选中的文字内容 
* |-target 触发mouseup事件的元素 
* |-mouseP 触发mouseup事件时鼠标坐标 
*/ 
function select(o, fn){ 
o.onmouseup = function(e){ 
var event = window.event || e; 
var target = event.srcElement ? event.srcElement : event.target; 
if (/input|textarea/i.test(target.tagName) && /firefox/i.test(navigator.userAgent)) { 
//Firefox在文本框内选择文字 
var staIndex=target.selectionStart; 
var endIndex=target.selectionEnd; 
if(staIndex!=endIndex){ 
var sText=target.value.substring(staIndex,endIndex); 
fn(sText,target); 
} 
} 
else{ 
//获取选中文字 
var sText = document.selection == undefined ? document.getSelection().toString():document.selection.createRange().text; 
if (sText != "") { 
//将参数传入回调函数fn 
fn(sText, target); 
} 
} 
} 
} 
/*]]select=*/ 
function tanchu(txt,tar){ 
alert("文字属于"+tar.tagName+"元素,选中内容为:"+txt); 
}

 原作者见:http://momomolice.com/wordpress/archives/420.html

附:只获得选取的文字的代码(不响应该事件)

function getSelectedText() 
{ 
if (window.getSelection) 
{ // This technique is the most likely to be standardized. 
// getSelection() returns a Selection object, which we do not document. 
return window.getSelection().toString(); 
} 
else if (document.getSelection) 
{ 
// This is an older, simpler technique that returns a string 
return document.getSelection(); 
} 
else if (document.selection) 
{ 
// This is the IE-specific technique. 
// We do not document the IE selection property or TextRange objects. 
return document.selection.createRange().text; 
} 
}

函数运行后会将选取的文字返回出来。

原作者已不可考。。。

Javascript 相关文章推荐
textarea的value是html文件源代码,存成html文件的代码
Apr 20 Javascript
js 第二代身份证号码的验证机制代码
May 12 Javascript
jquery中获取元素的几种方式小结
Jul 05 Javascript
基于jquery的多彩百分比 动态进度条 投票效果显示效果实现代码
Aug 28 Javascript
JavaScript中如何通过arguments对象实现对象的重载
May 12 Javascript
js实现的点击div区域外隐藏div区域
Jun 30 Javascript
javascript基本包装类型介绍
Apr 10 Javascript
js拆分字符串并将分割的数据放到数组中的方法
May 06 Javascript
JavaScript数组合并的多种方法
May 22 Javascript
微信小程序 Image API实例详解
Sep 30 Javascript
Bootstrap文件上传组件之bootstrap fileinput
Nov 25 Javascript
微信小程序引入Vant组件库过程解析
Aug 06 Javascript
js预载入和JavaScript Image()对象使用介绍
Aug 28 #Javascript
jquery 查找iframe父级页面元素的实现代码
Aug 28 #Javascript
基于jquery的多彩百分比 动态进度条 投票效果显示效果实现代码
Aug 28 #Javascript
一个JQuery写的点击上下滚动的小例子
Aug 27 #Javascript
JavaScript 原型继承之构造函数继承
Aug 26 #Javascript
JavaScript原型继承之基础机制分析
Aug 26 #Javascript
自己动手开发jQuery插件教程
Aug 25 #Javascript
You might like
风味层面去分析咖啡油脂
2021/03/03 咖啡文化
php include的妙用,实现路径加密
2008/07/29 PHP
PHP实现克鲁斯卡尔算法实例解析
2014/08/22 PHP
ThinkPHP控制器详解
2015/07/27 PHP
Joomla调用系统自带编辑器的实现方法
2016/05/05 PHP
Javascript hasOwnProperty 方法 & in 关键字
2008/11/26 Javascript
一些Javascript的IE和Firefox(火狐)兼容性的问题总结及常用例子
2009/05/21 Javascript
使用js写的一个简易的投票
2013/11/27 Javascript
JavaScript中判断页面关闭、页面刷新的实现代码
2014/08/27 Javascript
JavaScript将取代AppleScript?
2014/09/18 Javascript
javascript实现点击按钮弹出一个可关闭层窗口同时网页背景变灰的方法
2015/05/13 Javascript
Ajax清除浏览器js、css、图片缓存的方法
2015/08/06 Javascript
Angular的$http的ajax的请求操作(推荐)
2017/01/10 Javascript
详解JavaScript中的Object.is()与"==="运算符总结
2020/06/17 Javascript
[05:35]DOTA2英雄梦之声_第13期_拉比克
2014/06/21 DOTA
videocapture库制作python视频高速传输程序
2013/12/23 Python
Python中zfill()方法的使用教程
2015/05/20 Python
在Python的Django框架中生成CSV文件的方法
2015/07/22 Python
python中的协程深入理解
2019/06/10 Python
python通过实例讲解反射机制
2019/10/17 Python
pytorch 实现模型不同层设置不同的学习率方式
2020/01/06 Python
python第三方库学习笔记
2020/02/07 Python
基于Tensorflow高阶读写教程
2020/02/10 Python
自定义实现 PyQt5 下拉复选框 ComboCheckBox的完整代码
2020/03/30 Python
Python连接mysql数据库及简单增删改查操作示例代码
2020/08/03 Python
Python程序慢的重要原因
2020/09/04 Python
CSS3实现swap交换动画
2016/01/19 HTML / CSS
澳大利亚波西米亚风连衣裙在线商店:Fortunate One
2019/04/01 全球购物
专科毕业生求职简历的自我评价
2013/10/12 职场文书
实习生自荐信范文分享
2013/11/27 职场文书
动员大会主持词
2014/03/20 职场文书
环保专项行动方案
2014/05/12 职场文书
求职信名称怎么写
2014/05/26 职场文书
大一新生检讨书
2014/10/29 职场文书
捐资助学感谢信
2015/01/21 职场文书
关于CentOS 8 搭建MongoDB4.4分片集群的问题
2021/10/24 MongoDB