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 相关文章推荐
javascript获取当前日期时间及其它操作函数
Jan 11 Javascript
JS定时器实例详细分析
Oct 11 Javascript
用javascript读取xml文件读取节点数据
Aug 12 Javascript
Vue+axios 实现http拦截及路由拦截实例
Apr 25 Javascript
详解webpack和webpack-simple中如何引入css文件
Jun 28 Javascript
浅析Vue项目中使用keep-Alive步骤
Jul 27 Javascript
jQuery 操作 HTML 元素和属性的方法
Nov 12 jQuery
微信小程序 checkbox使用实例解析
Sep 09 Javascript
微信小程序实现图片翻转效果的实例代码
Sep 20 Javascript
解决layui页面按钮点击无反应,也不报错的问题
Sep 29 Javascript
javaScript 实现重复输出给定的字符串的常用方法小结
Feb 20 Javascript
vue自定义指令限制输入框输入值的步骤与完整代码
Aug 30 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
php header()函数使用说明
2008/07/10 PHP
PHP使用Redis替代文件存储Session的方法
2017/02/15 PHP
php类自动装载、链式操作、魔术方法实现代码
2017/07/23 PHP
JavaScript 字符串与数组转换函数[不用split与join]
2009/12/13 Javascript
JS分页控件 可用于无刷新分页
2013/07/23 Javascript
Javascript学习笔记之 对象篇(一) : 对象的使用和属性
2014/06/24 Javascript
JS清除文本框内容离开在恢复及鼠标离开文本框时触发js的方法
2016/01/12 Javascript
Bootstarp风格的toggle效果分享
2016/02/23 Javascript
JavaScript几种数组去掉重复值的方法推荐
2016/04/12 Javascript
Bootstrap页面布局基础知识全面解析
2016/06/13 Javascript
jquery表单插件form使用方法详解
2017/01/20 Javascript
Angular.js中angular-ui-router的简单实践
2017/07/18 Javascript
ajax跨域访问遇到的问题及解决方案
2019/05/23 Javascript
vue 使用axios 数据请求第三方插件的使用教程详解
2019/07/05 Javascript
jQuery表单选择器用法详解
2019/08/22 jQuery
JavaScript 实现轮播图特效的示例
2020/11/05 Javascript
详解在Python程序中使用Cookie的教程
2015/04/30 Python
Python标准库之collections包的使用教程
2017/04/27 Python
Python numpy 提取矩阵的某一行或某一列的实例
2018/04/03 Python
Python列表切片操作实例总结
2019/02/19 Python
解决pyqt5中QToolButton无法使用的问题
2019/06/21 Python
Python修改列表值问题解决方案
2020/03/06 Python
使用Python实现批量ping操作方法
2020/05/06 Python
pytorch SENet实现案例
2020/06/24 Python
Python容器类型公共方法总结
2020/08/19 Python
加拿大知名的国际儿童品牌:Hatley
2016/11/09 全球购物
Answear匈牙利:来自全球200多个知名时尚品牌
2017/04/21 全球购物
Linux文件操作命令都有哪些
2016/07/23 面试题
模具毕业生推荐信
2014/02/15 职场文书
副处级干部考察材料
2014/05/17 职场文书
十佳标兵事迹材料
2014/08/18 职场文书
公民授权委托书范本
2014/09/17 职场文书
铁人观后感
2015/06/16 职场文书
Arthas排查Kubernetes中应用频繁挂掉重启异常
2022/02/28 MySQL
MySQL自定义函数及触发器
2022/08/05 MySQL
VMware虚拟机安装 Windows Server 2022的详细图文教程
2022/09/23 Servers