js操作输入框中选择内容兼容IE及其他主流浏览器


Posted in Javascript onApril 22, 2014

工作中遇到需要给输入框中选中的内容增加超链接

function addHref(des){ 
var selectedText=""; 
if(window.getSelection&&des != undefined){//兼容非IE浏览器,由于非IE浏览器需要给定操作的元素ID才可以获取输入元素中选中的内容,因此需要输入ID var textField=document.getElementById(des); 
var selectionStart=textField.selectionStart; 
var selectionEnd=textField.selectionEnd; 
if(selectionStart != undefined && selectionEnd != undefined){ 
selectedText=textField.value.substring(selectionStart,selectionEnd); 
} 
if(selectedText==""){ 
alert("请选择需要添加链接的文字!"); 
return; 
} 
var hyperlinks=prompt("超链接地址:",""); 
if(hyperlinks!=null){ 
var replaceString="<a href='"+hyperlinks+"' target='_blank'><b><u><font color='#686600'>" + selectedText + "</font></u></b></a>"; 
tmpStr=textField.value; 
textField.value=tmpStr.substring(0,selectionStart)+replaceString+tmpStr.substring(selectionEnd,tmpStr.length); 
} 
} 
else if((document.selection)&&(document.selection.type == "Text")){//IE中不需要ID 
var range=document.selection.createRange(); 
var formerElement=range.parentElement(); 
if(formerElement.tagName!="TEXTAREA"){ 
alert("请在指定位置选择需要添加超链接的文字!"); 
return; 
} 
selectedText=range.text; 
var hyperlinks=prompt("超链接地址:",""); 
if(hyperlinks!=null){ 
range.text="<a href='"+hyperlinks+"' target='_blank'><b><u><font color='#686600'>" + selectedText + "</font></u></b></a>"; 
} 
} 
else{ 
alert("请选择需要添加链接的文字!"); 
return; 
} 
}
Javascript 相关文章推荐
My Desktop :) 桌面式代码
Dec 29 Javascript
js运动动画的八个知识点
Mar 12 Javascript
JS实现点击事件统计的简单实例
Jul 10 Javascript
JavaScript中setter和getter方法介绍
Jul 11 Javascript
jQuery插件实现可输入和自动匹配的下拉框
Oct 24 Javascript
微信小程序 图片边框解决方法
Jan 16 Javascript
js实现适配不同的屏幕大小
Apr 10 Javascript
JavaScript中this的用法及this在不同应用场景的作用解析
Apr 13 Javascript
Angular2中select用法之设置默认值与事件详解
May 07 Javascript
WebSocket的简单介绍及应用
May 23 Javascript
vue在线动态切换主题色方案
Mar 26 Javascript
node.js通过url读取文件
Oct 16 Javascript
jquery分页插件jpaginate在IE中不兼容问题
Apr 22 #Javascript
jquery防止重复执行动画避免页面混乱
Apr 22 #Javascript
Area 区域实现post提交数据的js写法
Apr 22 #Javascript
div失去焦点事件实现思路
Apr 22 #Javascript
js隐式全局变量造成的bug示例代码
Apr 22 #Javascript
JavaScript实现的图像模糊算法代码分享
Apr 22 #Javascript
JavaScript闭包实例讲解
Apr 22 #Javascript
You might like
php读取mysql乱码,用set names XXX解决的原理分享
2011/12/29 PHP
PHP自定义图片缩放函数实现等比例不失真缩放的方法
2016/08/19 PHP
yii2 上传图片的示例代码
2018/11/02 PHP
PHP商品秒杀问题解决方案实例详解【mysql与redis】
2019/07/22 PHP
PHP实现新型冠状病毒疫情实时图的实例
2020/02/04 PHP
jquery 图片预加载 自动等比例缩放插件
2008/12/25 Javascript
检测input每次的输入是否合法遇到汉字输入就有问题
2012/05/23 Javascript
动态的改变IFrame的高度实现IFrame自动伸展适应高度
2012/12/28 Javascript
JavaScript中常见的字符串操作函数及用法汇总
2015/05/04 Javascript
node.js连接mongoDB数据库 快速搭建自己的web服务
2016/04/17 Javascript
jQuery前端开发35个小技巧
2016/05/24 Javascript
JavaScript类型相关的常用操作总结
2019/02/14 Javascript
layui按条件隐藏表格列的实例
2019/09/19 Javascript
解决antd 下拉框 input [defaultValue] 的值的问题
2020/10/31 Javascript
Vant picker 多级联动操作
2020/11/02 Javascript
解决vant title-active-color与title-inactive-color不生效问题
2020/11/03 Javascript
原生js实现滑块区间组件
2021/01/20 Javascript
[01:20:37]FNATIC vs NIP 2019国际邀请赛小组赛 BO2 第一场 8.16
2019/08/19 DOTA
实例讲解python函数式编程
2014/06/09 Python
Python读取Json字典写入Excel表格的方法
2018/01/03 Python
Python中的单行、多行、中文注释方法
2018/07/19 Python
python对指定字符串逆序的6种方法(小结)
2020/04/02 Python
python tkinter实现连连看游戏
2020/11/16 Python
SmartBuyGlasses英国:购买太阳镜和眼镜
2018/01/29 全球购物
英国名牌男装店:Standout
2021/02/17 全球购物
Linux Interview Questions For software testers
2012/06/02 面试题
安全教育心得体会
2013/12/29 职场文书
业务副厂长岗位职责
2014/01/03 职场文书
中层竞聘演讲稿
2014/01/09 职场文书
优秀教师获奖感言
2014/01/31 职场文书
《猫》教学反思
2014/02/26 职场文书
《沉香救母》教学反思
2014/04/19 职场文书
春风化雨观后感
2015/06/11 职场文书
领导欢送会主持词
2015/07/06 职场文书
2016年小学圣诞节活动总结
2016/03/31 职场文书
《烈火英雄》观后感:致敬和平时代的英雄
2019/11/11 职场文书