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 相关文章推荐
使用户点击后退按钮使效三行代码
Jul 07 Javascript
JS实现将人民币金额转换为大写的示例代码
Feb 13 Javascript
详解JavaScript设计模式开发中的桥接模式使用
May 18 Javascript
javascript经典特效分享 手风琴、轮播图、图片滑动
Sep 14 Javascript
js实现刷新页面后回到记录时滚动条的位置【两种方案可选】
Dec 12 Javascript
js Canvas绘制圆形时钟教程
Feb 06 Javascript
Angular.JS实现无限级的联动菜单(使用demo)
Feb 08 Javascript
详解cordova打包成webapp的方法
Oct 18 Javascript
Vue加载组件、动态加载组件的几种方式
Aug 31 Javascript
jQuery pjax 应用简单示例
Sep 20 jQuery
js中值引用和地址引用实例分析
Jun 21 Javascript
javascript实现摄像头拍照预览
Sep 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屏蔽蜘蛛访问代码及常用搜索引擎的HTTP_USER_AGENT
2013/03/06 PHP
CI框架中集成CKEditor编辑器的教程
2014/06/09 PHP
PHP命名空间(Namespace)简明教程
2014/06/11 PHP
PHP随机生成信用卡卡号的方法
2015/03/23 PHP
PHP实现的DES加密解密实例代码
2016/04/06 PHP
jQuery的实现原理的模拟代码 -4 重要的扩展函数 extend
2010/08/03 Javascript
jQuery基本过滤选择器使用介绍
2013/04/18 Javascript
jquery定时滑出可最小化的底部提示层特效代码
2013/10/02 Javascript
jQuery动态改变图片显示大小(修改版)的实现思路及代码
2013/12/24 Javascript
javascript实现类似百度分享功能的方法
2015/07/27 Javascript
JavaScript+CSS实现的可折叠二级菜单实例
2016/02/29 Javascript
jQuery Easyui快速入门教程
2016/08/21 Javascript
JS图片放大效果简单实现代码
2016/09/08 Javascript
微信小程序 WXML、WXSS 和JS介绍及详解
2016/10/08 Javascript
jQuery中$.ajax()方法参数解析
2016/10/22 Javascript
JavaScript计时器用法分析【setTimeout和clearTimeout】
2017/01/18 Javascript
Vue下的国际化处理方法
2017/12/18 Javascript
python中dir函数用法分析
2015/04/17 Python
python2.x实现人民币转大写人民币
2018/06/20 Python
python Flask 装饰器顺序问题解决
2018/08/08 Python
Python单向链表和双向链表原理与用法实例详解
2018/08/31 Python
python实现停车管理系统
2018/11/30 Python
Python实现的微信支付方式总结【三种方式】
2019/04/13 Python
python二维码操作:对QRCode和MyQR入门详解
2019/06/24 Python
Python 的字典(Dict)是如何存储的
2019/07/05 Python
利用python画出AUC曲线的实例
2020/02/28 Python
Keras Convolution1D与Convolution2D区别说明
2020/05/22 Python
Python中的__init__作用是什么
2020/06/09 Python
物业管理计划书
2014/01/10 职场文书
在教室放鞭炮的检讨书
2014/09/28 职场文书
企业整改报告范文
2014/11/08 职场文书
大学团日活动总结书
2015/05/11 职场文书
2016年会开场白台词
2015/06/01 职场文书
2016七夕情人节寄语
2015/12/04 职场文书
Python学习之时间包使用教程详解
2022/03/21 Python
MySQL实现配置主从复制项目实践
2022/03/31 MySQL