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 相关文章推荐
ie 处理 gif动画 的onload 事件的一个 bug
Apr 12 Javascript
jquery load()在firefox(火狐)下显示不正常的解决方法
Apr 05 Javascript
不同Jquery版本引发的问题解决
Oct 14 Javascript
js 设置缓存及获取设置的缓存
May 08 Javascript
JavaScript清空数组元素的两种方法简单比较
Jul 10 Javascript
iframe中子父类窗口调用JS的方法及注意事项
Aug 25 Javascript
a标签跳转到指定div,jquery添加和移除class属性的实现方法
Oct 10 Javascript
利用Javascript实现简单的转盘抽奖
Feb 13 Javascript
JS正则替换去空格的方法
Mar 24 Javascript
关于JavaScript 数组你应该知道的事情(推荐)
Apr 10 Javascript
Vuex实现数据增加和删除功能
Nov 11 Javascript
云服务器部署Node.js项目的方法步骤(小白系列)
Mar 23 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
mysql_num_rows VS COUNT 效率问题分析
2011/04/23 PHP
php设计模式 Mediator (中介者模式)
2011/06/26 PHP
解析PHP高效率写法(详解原因)
2013/06/20 PHP
PHP 5.3新增魔术方法__invoke概述
2014/07/23 PHP
PHP+JS三级菜单联动菜单实现方法
2016/02/24 PHP
Zend Framework教程之前端控制器Zend_Controller_Front用法详解
2016/03/07 PHP
php中array_slice和array_splice函数解析
2016/10/18 PHP
php实现大文件断点续传下载实例代码
2019/10/01 PHP
让innerHTML的脚本也可以运行起来
2006/07/01 Javascript
JS 非图片动态loading效果实现代码
2010/04/09 Javascript
10个基于浏览器的JavaScript调试工具分享
2013/02/07 Javascript
jquery的flexigrid无法显示数据提示获取到数据
2013/07/19 Javascript
JavaScript控制各种浏览器全屏模式的方法、属性和事件介绍
2014/04/03 Javascript
js实现获取当前时间是本月第几周的方法
2015/08/11 Javascript
实例讲解JS中setTimeout()的用法
2016/01/28 Javascript
基于JavaScript实现图片点击弹出窗口而不是保存
2016/02/06 Javascript
jQuery实现打开页面渐现效果示例
2016/07/27 Javascript
JavaScript实现分页效果
2017/03/28 Javascript
jQuery实现html table行Tr的复制、删除、计算功能
2017/07/10 jQuery
基于vue2.0实现简单轮播图
2017/11/27 Javascript
用JS实现根据当前时间随机生成流水号或者订单号
2018/05/31 Javascript
layui中table表头样式修改方法
2018/08/15 Javascript
详解ES6 Fetch API HTTP请求实用指南
2018/11/14 Javascript
element vue validate验证名称重复 输入框与后台重复验证 特殊字符 字符长度 及注意事项小结【实例代码】
2018/11/20 Javascript
opencv转换颜色空间更改图片背景
2019/08/20 Python
Python爬虫简单运用爬取代理IP的实现
2020/12/01 Python
python lambda的使用详解
2021/02/26 Python
独特的礼品和创新的科技产品:The Grommet
2018/02/24 全球购物
匈牙利墨盒和碳粉购买网站:CDRmarket
2018/04/14 全球购物
澳大利亚婴儿礼品公司:The Baby Gift Company
2018/11/04 全球购物
Europcar美国/加拿大:预订汽车或卡车租赁服务
2018/11/13 全球购物
EJB2和EJB3在架构上的不同点
2014/09/29 面试题
学生实习自我鉴定
2013/10/11 职场文书
学校对教师的评语
2014/04/28 职场文书
群众路线个人剖析材料
2014/10/07 职场文书
React Fragment介绍与使用详解
2021/11/11 Javascript