JavaScript操作选择对象的简单实例


Posted in Javascript onMay 16, 2016

JavaScript操作选择对象的简单实例

//替换选中文本内容,参数text为要替换的内容
function SetSelectionText(text) {
  //非IE浏览器
  if (window.getSelection) {
    var sel = window.getSelection();
    alert(sel.rangeCount); //选区个数, 通常为 1 .
    sel.deleteFromDocument(); //清除选择的内容
    var r = sel.getRangeAt(0); //即使已经执行了deleteFromDocument(), 这个函数仍然返回一个有效对象.
    var selFrag = r.cloneContents(); //克隆选择的内容
    var frag = selFrag.childNodes; //如果执行了deleteFromDocument(), 这个数组长度将会是 0 
    for (var i = 0; i < frag.length; i++) {
      alert(frag[i].nodeName); //枚举选择的对象
    }
    var h1 = document.createElement('H1'); //生成一个插入对象
    h1.innerHTML = text; //设置这个对象的内容
    r.insertNode(h1); //把对象插入到选区, 这个操作不会替换选择的内容, 而是追加到选区的后面, 所以如果需要普通粘贴的替换效果, 之前执行deleteFromDocument()函数.
  }
  else if (document.selection && document.selection.createRange) {
    //IE浏览器
    var sel = document.selection.createRange(); //获得选区对象
    alert(sel.htmlText); //选择区的html文本.
    sel.pasteHTML('<h1>标题</h1>'); //粘贴到选区的html内容, 会替换选择的内容.
  }
}

以上这篇JavaScript操作选择对象的简单实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Jquery 基础学习笔记之文档处理
May 29 Javascript
基于jQuery的树控件实现代码(asp.net+json)
Jul 11 Javascript
eval与window.eval的差别分析
Mar 17 Javascript
模拟多级复选框效果的jquery代码
Aug 13 Javascript
淘宝网提供的国内NPM镜像简介和使用方法
Apr 17 Javascript
通过$(this)使用jQuery包装后的方法或属性
May 18 Javascript
jQuery实现按钮只点击一次后就取消点击事件绑定的方法
Jun 26 Javascript
如何使用jquery easyui创建标签组件
Nov 18 Javascript
vue按需引入element Transfer 穿梭框
Sep 30 Javascript
JavaScript函数绑定用法实例分析
Nov 14 Javascript
在vue里使用codemirror遇到的问题
Nov 01 Javascript
javascript function(函数类型)使用与注意事项小结
Jun 10 Javascript
JS组件Bootstrap实现图片轮播效果
May 16 #Javascript
Bootstrap4一次重大更新 几乎涉及每行代码
May 16 #Javascript
JS获取元素多层嵌套思路详解
May 16 #Javascript
怎么限制input的text里输入的值只能是数字(正则、js)
May 16 #Javascript
BootStrap点击下拉菜单项后显示一个新的输入框实现代码
May 16 #Javascript
在javascript中创建对象的各种模式解析
May 16 #Javascript
Bootstrap3 input输入框插入glyphicon图标的方法
May 16 #Javascript
You might like
PHP 远程关机实现代码
2009/11/10 PHP
php设计模式 Observer(观察者模式)
2011/06/26 PHP
PHP禁止个别IP访问网站
2013/10/30 PHP
destoon在各个服务器下设置URL Rewrite(伪静态)的方法
2014/06/21 Servers
PHP将MySQL的查询结果转换为数组并用where拼接的示例
2016/05/13 PHP
jQuery load方法用法集锦
2011/12/06 Javascript
jquery入门—访问DOM对象方法
2013/01/07 Javascript
图片轮换效果实现代码(点击按钮停止执行)
2013/04/12 Javascript
javascript通过className来获取元素的简单示例代码
2014/01/10 Javascript
创建自己的jquery表格插件
2015/11/25 Javascript
JS深度拷贝Object Array实例分析
2016/03/31 Javascript
JavaScript 消息框效果【实现代码】
2016/04/27 Javascript
Javascript 5种方法实现过滤删除前后所有空格
2016/06/22 Javascript
easyUI实现(alert)提示框自动关闭的实例代码
2016/11/07 Javascript
Vue实现路由跳转和嵌套
2017/06/20 Javascript
jquery在vue脚手架中的使用方式示例
2017/08/29 jQuery
JavaScript中十种一步拷贝数组的方法实例详解
2019/04/22 Javascript
小程序封装wx.request请求并创建接口管理文件的实现
2019/04/29 Javascript
fastadmin中调用js的方法
2019/05/14 Javascript
vant 自定义 van-dropdown-item的用法
2020/08/05 Javascript
[00:35]DOTA2上海特级锦标赛 VP战队宣传片
2016/03/04 DOTA
Python计算回文数的方法
2015/03/11 Python
python计算圆周率pi的方法
2015/07/11 Python
Python实现屏幕截图的两种方式
2018/02/05 Python
Python 使用类写装饰器的小技巧
2018/09/30 Python
使用Python将Mysql的查询数据导出到文件的方法
2019/02/25 Python
python 多进程并行编程 ProcessPoolExecutor的实现
2019/10/11 Python
Python使用matplotlib 画矩形的三种方式分析
2019/10/31 Python
Pytorch 实现sobel算子的卷积操作详解
2020/01/10 Python
Django中F函数的使用示例代码详解
2020/07/06 Python
CSS3 filter(滤镜)实现网页灰色或者黑色模式的代码
2020/11/30 HTML / CSS
英国创新设计文具、卡片和礼品包装网站:Paperchase
2018/07/14 全球购物
写演讲稿要注意的六件事
2014/01/14 职场文书
幼儿园教师国培感言
2014/02/02 职场文书
Redis持久化与主从复制的实践
2021/04/27 Redis
Java基础-封装和继承
2021/07/02 Java/Android