js实现文字选中分享功能


Posted in Javascript onJanuary 25, 2017

总结:文字选中IE和其他浏览器不一样

在IE中文字选中后鼠标抬起,图片显现触发有点快所以用定时器。

<!DOCTYPE html>
<html>
<head>
<meta charset=utf-8 />
<title></title>
<script type="text/javascript" src="http://libs.baidu.com/jquery/1.11.1/jquery.min.js"></script>
<style type="text/css">
*{padding: 0;margin: 0;}
#p1{width: 300px;}
#div1{display: none;position: absolute;}
img{width:26px;height:26px;}
</style>
</head>
<body>
<p id="p1">
 文字的选中功能是不太常用的功能,多出现在文本编辑器中,或是文本域之类的光标处理上。所以呢,使用的一些属性也并不是常见的。在IE浏览器下使用的是createTextRange而Firefox/chrome等现代浏览器下使用的是setSelectionRange。
</p>
<div id='div1'><img src='http://cdn.attach.qdfuns.com/notes/pics/201701/23/221744ud9ggjjjgg85e90m.gif.editor.gif'></div>
<script type="text/javascript">
function selectText(){
 if(document.selection){
 //IE
 return document.selection.createRange().text
 }else{
 //ff chrom
 return window.getSelection().toString()
 }
}
var oP=document.getElementById('p1')
var oDiv=document.getElementById('div1')
oP.onmouseup=function(ev){
 var ev=ev||event
 var left=ev.clientX
 var top=ev.clientY
 if(selectText().length>10){
 setTimeout(function(){
 oDiv.style.display='block';
 oDiv.style.left=left+'px'
 oDiv.style.top=top+'px'
 },100)
 }else{
 oDiv.style.display='none';
 }
}
//点击oP阻止冒泡到document上
oP.onclick=function(ev){
 var ev=ev||window.event
 ev.cancelBubble=true
}
document.onclick=function(){
 oDiv.style.display='none';
}
</script>
</body>
</html>

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,同时也希望多多支持三水点靠木!

Javascript 相关文章推荐
实例:尽可能写友好的Javascript代码
Oct 09 Javascript
jQuery帮助之CSS尺寸(五)outerHeight、outerWidth
Nov 14 Javascript
兼容所有浏览器的js复制插件Zero使用介绍
Mar 19 Javascript
JS 对象属性相关(检查属性、枚举属性等)
Apr 05 Javascript
javascript实现自动输出文本(打字特效)
Aug 27 Javascript
javascript每日必学之循环
Feb 19 Javascript
js 取消页面可以选中文字的功能方法
Jan 02 Javascript
详解如何在React组件“外”使用父组件的Props
Jan 12 Javascript
angularjs 页面自适应高度的方法
Jan 17 Javascript
vue-resource请求实现http登录拦截或者路由拦截的方法
Jul 11 Javascript
vue如何进行动画的封装
Sep 26 Javascript
Mint UI实现A-Z字母排序的城市选择列表
Dec 28 Javascript
利用Js+Css实现折纸动态导航效果实例源码
Jan 25 #Javascript
jquery实现拖动效果(代码分享)
Jan 25 #Javascript
angular forEach方法遍历源码解读
Jan 25 #Javascript
three.js实现围绕某物体旋转
Jan 25 #Javascript
基于Marquee.js插件实现的跑马灯效果示例
Jan 25 #Javascript
angular和BootStrap3实现购物车功能
Jan 25 #Javascript
jquery 实现复选框的全选操作实例代码
Jan 24 #Javascript
You might like
PHP生成验证码时“图像因其本身有错无法显示”的解决方法
2013/08/07 PHP
php使用递归函数实现数字累加的方法
2015/03/16 PHP
PHP用PDO如何封装简单易用的DB类详解
2017/07/30 PHP
PHP fopen中文文件名乱码问题解决方案
2020/10/28 PHP
jQuery结合Json提交数据到Webservice,并接收从Webservice返回的Json数据
2011/02/18 Javascript
iframe的onload在Chrome/Opera中执行两次Bug的解决方法
2011/03/17 Javascript
在js中判断checkboxlist(.net控件客户端id)是否有选中
2013/04/11 Javascript
JS事件在IE与FF中的区别详细解析
2013/11/20 Javascript
jQuery控制div实现随滚动条滚动效果
2016/06/07 Javascript
Js查找字符串中出现次数最多的字符及个数实例解析
2016/09/05 Javascript
JavaScript表单验证开发
2016/11/23 Javascript
AngularJS Controller作用域
2017/01/09 Javascript
vue.js学习笔记:如何加载本地json文件
2017/01/17 Javascript
原生js二级联动效果
2017/06/20 Javascript
VUE中使用Vue-resource完成交互
2017/07/21 Javascript
详解http访问解析流程原理
2017/10/18 Javascript
通过一个简单的例子学会vuex与模块化
2017/11/22 Javascript
Vue2.X 通过AJAX动态更新数据
2018/07/17 Javascript
如何使用50行javaScript代码实现简单版的call,apply,bind
2019/08/14 Javascript
vue-router重写push方法,解决相同路径跳转报错问题
2020/08/07 Javascript
Python 40行代码实现人脸识别功能
2017/04/02 Python
Python实现的微信公众号群发图片与文本消息功能实例详解
2017/06/30 Python
Python实现翻转数组功能示例
2018/01/12 Python
python中实现将多个print输出合成一个数组
2018/04/19 Python
python抖音表白程序源代码
2019/04/07 Python
python如何求数组连续最大和的示例代码
2020/02/04 Python
Python unittest生成测试报告过程解析
2020/09/08 Python
伦敦最有品味的百货:Liberty London
2016/11/12 全球购物
小学科学教学反思
2014/01/26 职场文书
金融管理应届生求职信
2014/02/20 职场文书
《周恩来的四个昼夜》观后思想汇报范文两篇
2014/09/10 职场文书
赔偿协议书范本
2014/09/12 职场文书
我的长征观后感
2015/06/09 职场文书
优秀党员先进事迹材料2016
2016/02/29 职场文书
解决pytorch-gpu 安装失败的记录
2021/05/24 Python
python中filter,map,reduce的作用
2022/06/10 Python