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 相关文章推荐
不一样的文字闪烁 轮番闪烁
Nov 11 Javascript
javascript 设置某DIV区域内的checkbox复选框
Nov 30 Javascript
JavaScript Cookie的读取和写入函数
Dec 08 Javascript
JavaScript高级程序设计 事件学习笔记
Sep 10 Javascript
JavaScript中instanceof运算符的用法总结
Nov 19 Javascript
js控制href内容的连接内容的变化示例
Apr 30 Javascript
浅谈JS原型对象和原型链
Mar 02 Javascript
简单理解js的冒泡排序
Dec 19 Javascript
使用jquery给新生的th绑定hover事件的实例
Feb 10 Javascript
详解用async/await来处理异步
Aug 28 Javascript
基于better-scroll 实现歌词联动功能的代码
May 07 Javascript
Java 生成随机字符的示例代码
Jan 13 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
数据库中排序的对比及使用条件详解
2012/02/23 PHP
与文件上传有关的php配置参数总结
2013/06/14 PHP
php数组索引与键值操作技巧实例分析
2015/06/24 PHP
在PHP程序中使用Rust扩展的方法
2015/07/03 PHP
PHP实现上传文件并存进数据库的方法
2015/07/16 PHP
PHP中Array相关函数简介
2016/07/03 PHP
tp5修改(实现即点即改)
2019/10/18 PHP
常见的5个PHP编码小陋习以及优化实例讲解
2021/02/27 PHP
js 对小数加法精度处理示例说明
2013/12/27 Javascript
js动态创建标签示例代码
2014/06/09 Javascript
Js可拖拽放大的层拖动特效实现方法
2015/02/25 Javascript
JavaScript 正则表达式中global模式的特性
2016/02/25 Javascript
第十篇BootStrap轮播插件使用详解
2016/06/21 Javascript
jQuery+CSS实现简单切换菜单示例
2016/07/27 Javascript
JS实现的相册图片左右滚动完整实例
2016/11/23 Javascript
jQuery元素选择器实例代码
2017/02/06 Javascript
vue+vue-validator 表单验证功能的实现代码
2017/11/13 Javascript
Angular5给组件本身的标签添加样式class的方法
2018/04/07 Javascript
详解javascript设计模式三:代理模式
2019/03/25 Javascript
jquery将json转为数据字典的实例代码
2019/10/11 jQuery
在Vue 中实现循环渲染多个相同echarts图表
2020/07/20 Javascript
python使用多线程不断刷新网页的方法
2015/03/31 Python
python实现在sqlite动态创建表的方法
2015/05/08 Python
python在windows下创建隐藏窗口子进程的方法
2015/06/04 Python
python 项目目录结构设置
2020/02/14 Python
CSS3改变浏览器滚动条样式
2019/01/04 HTML / CSS
日本非常有名的内衣丝袜品牌:GUNZE
2017/01/06 全球购物
俄罗斯优惠券网站:BIGLION
2017/05/21 全球购物
雅高酒店中国:Accorhotels.com China
2018/03/26 全球购物
三八妇女节活动主持词
2014/03/17 职场文书
培训班主持词
2014/03/28 职场文书
关于护士节的演讲稿
2014/05/26 职场文书
售房委托书
2014/08/30 职场文书
2014年员工工作总结范文
2014/11/18 职场文书
2016年“我们的节日·中秋节”活动总结
2016/04/05 职场文书
Java 在线考试云平台的实现
2021/11/23 Java/Android