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 相关文章推荐
dreamweaver 8实现Jquery自动提示
Dec 04 Javascript
使用jquery动态加载js文件的方法
Dec 24 Javascript
Jquery 实现table样式的设定
Jan 28 Javascript
vue.js todolist实现代码
Oct 29 Javascript
基于vue cli重构多页面脚手架过程详解
Jan 23 Javascript
JS实现的简单下拉框联动功能示例
May 11 Javascript
webpack 3.X学习之多页面打包的方法
Sep 04 Javascript
jQuery的ztree仿windows文件新建和拖拽功能的实现代码
Dec 05 jQuery
微信小程序防止多次点击跳转(函数节流)
Sep 19 Javascript
vue 实现路由跳转时更改页面title
Nov 05 Javascript
javascript 原型与原型链的理解及实例分析
Nov 23 Javascript
javascript实现多边形碰撞检测
Oct 24 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中Collection 类的设计
2013/06/21 PHP
关于Jquery操作Cookie取值错误的解决方法
2013/08/26 Javascript
浅谈Javascript 执行顺序
2013/12/18 Javascript
jquery中EasyUI实现同步树
2015/03/01 Javascript
javascript实现随机生成DIV背景色
2016/06/20 Javascript
使用vue.js实现联动效果的示例代码
2017/01/10 Javascript
Node.js数据库操作之连接MySQL数据库(一)
2017/03/04 Javascript
vue时间格式化实例代码
2017/06/13 Javascript
Element input树型下拉框的实现代码
2018/12/21 Javascript
实例讲解v-if和v-show的区别
2019/01/31 Javascript
详解mpvue实现对苹果X安全区域的适配
2019/07/31 Javascript
[00:23]魔方之谜解锁款式
2018/12/20 DOTA
Python+django实现简单的文件上传
2016/08/17 Python
Python实现字符串反转的常用方法分析【4种方法】
2017/09/30 Python
python中的计时器timeit的使用方法
2017/10/20 Python
浅谈python中copy和deepcopy中的区别
2017/10/23 Python
在cmd中查看python的安装路径方法
2019/07/03 Python
pytorch实现Tensor变量之间的转换
2020/02/17 Python
Python numpy多维数组实现原理详解
2020/03/10 Python
DataFrame.groupby()所见的各种用法详解
2020/06/14 Python
Python爬虫模拟登陆哔哩哔哩(bilibili)并突破点选验证码功能
2020/12/21 Python
THE OUTNET美国官网:国际设计师品牌折扣网站
2017/03/07 全球购物
意大利婴儿产品网上商店:Mukako
2018/10/14 全球购物
shallow copy和deep copy的区别
2016/05/09 面试题
信息管理员岗位职责
2013/12/01 职场文书
大学生村官典型材料
2014/01/12 职场文书
优秀教师主要事迹
2014/02/01 职场文书
中年人生感言
2014/02/04 职场文书
低碳生活倡议书
2014/04/14 职场文书
暑期培训班招生方案
2014/08/26 职场文书
营销学习心得体会
2014/09/12 职场文书
"9.18"国耻日演讲稿范文
2014/09/14 职场文书
出售房屋委托书范本
2014/09/24 职场文书
大学生简历自我评价2015
2015/03/03 职场文书
餐馆开业致辞
2015/08/01 职场文书
团干部培训班心得体会
2016/01/06 职场文书