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 创建对象和构造类实现代码
Jul 30 Javascript
jquery判断单个复选框是否被选中的代码
Sep 03 Javascript
ExtJS Window 最小化的一种方法
Nov 18 Javascript
JavaScript Cookie 直接浏览网站分网址
Dec 08 Javascript
基于jquery的给文章加入关键字链接
Oct 26 Javascript
jQuery简单动画变换效果实例分析
Jul 04 Javascript
javascript阻止事件冒泡和浏览器的默认行为
Jan 21 Javascript
详解动画插件wow.js的使用方法
Sep 13 Javascript
微信小程序 数据绑定及运算的简单实例
Sep 20 Javascript
jQuery+koa2实现简单的Ajax请求的示例
Mar 06 jQuery
Vue递归组件+Vuex开发树形组件Tree--递归组件的简单实现
Apr 01 Javascript
vue19 组建 Vue.extend component、组件模版、动态组件 的实例代码
Apr 04 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:风雨欲来 路在何方?
2006/10/09 PHP
那些年我们错过的魔术方法(Magic Methods)
2014/01/14 PHP
ThinkPHP、ZF2、Yaf、Laravel框架路由大比拼
2015/03/25 PHP
php用正则判断是否为数字的方法
2016/03/25 PHP
PHP使用XMLWriter读写xml文件操作详解
2018/07/31 PHP
phpstudy隐藏index.php的方法
2020/09/21 PHP
如何利用PHP实现上传图片功能详解
2020/09/24 PHP
统计出现最多的字符次数的js代码
2010/12/03 Javascript
父子窗体间传递JSON格式的数据的代码
2010/12/25 Javascript
关于JavaScript的with 语句的使用方法
2011/05/09 Javascript
手机号码,密码正则验证
2014/09/04 Javascript
javascript实现网页屏蔽Backspace事件,输入框不屏蔽
2015/07/21 Javascript
包含中国城市的javascript对象实例
2015/08/03 Javascript
自己动手写的javascript前端等待控件
2015/10/30 Javascript
JavaScript中利用各种循环进行遍历的方式总结
2015/11/10 Javascript
jQuery插件EasyUI校验规则 validatebox验证框
2015/11/29 Javascript
Node.js中如何合并两个复杂对象详解
2016/12/31 Javascript
webpack4.0打包优化策略整理小结
2018/03/30 Javascript
layui table 参数设置方法
2018/08/14 Javascript
React Router V4使用指南(精讲)
2018/09/17 Javascript
Vue中util的工具函数实例详解
2019/07/08 Javascript
微信小程序 简易计算器实现代码实例
2019/09/02 Javascript
基于Layui自定义模块的使用方法详解
2019/09/14 Javascript
vue 路由meta 设置导航隐藏与显示功能的示例代码
2020/09/04 Javascript
[00:11]战神迅矛
2019/03/06 DOTA
用python制作游戏外挂
2018/01/04 Python
python批量识别图片指定区域文字内容
2019/04/30 Python
python飞机大战pygame游戏背景设计详解
2019/12/17 Python
安装pyinstaller遇到的各种问题(小结)
2020/11/20 Python
英国排名第一的礼品体验公司:Red Letter Days
2018/08/16 全球购物
const char*, char const*, char*const的区别是什么
2014/07/09 面试题
Linux管理员面试经常问道的相关命令
2014/12/12 面试题
是否可以从一个static方法内部发出对非static方法的调用?
2014/08/18 面试题
应届大学生自荐信
2013/12/05 职场文书
课外科技活动总结
2014/08/27 职场文书
班主任经验交流心得体会
2015/11/02 职场文书