位置: 编程技术 - 正文

Javascript标准DOM Range操作全集第1/3页(js dom操作方法)

编辑:rootadmin
2级DOM定义了一个createRange()方法,如果是按照DOM此标准的浏览器(IE并不是支持此标准的,但是IE里的属性或方法却远比标准中定义的多得多),它属于document对象,所以创建一个range对象要这样做:var oRange = document.createRange();如果你要检测你的浏览器是否支持此标准Range对象,可以用hasFeature()方法来检测:var supportsDOMRanges = document.implementation.hasFeature("Range", "2.0");if (supportsDOMRange) {var oRange = document.createRange();//range code here}Range对象进行简单的选择最简单用Range进行选择,用selectNode()或者selectNodeContents()方法,这两个方法只有一个接收参数,一个DOM节点。selectNode()方法选择全部节点,包括它的孩子,而selectNodeContents()选择的节点只是它的孩子。如 <p id="p1"><b>Hello</b> World</p><script>var oRange1 = document.createRange();var oRange2 = document.createRange();var oP1 = document.getElementById("p1");oRange1.selectNode(oP1);oRange2.selectNodeContents(oP1);</script>oRange1和oRange2包含上面所说的两种方法,但是看了下面的示图相信你能很快明白这两个方法的区别:当你创建了一个Range对象时,Range实例就会有以下的属性:startContainer — 返回range对象从何开始的节点对象(父节点的第一个节点)startOffset — 返回Range开始的偏移量(offset),如果startContainer是一个文本节点,注释节点,或者是CDATA节点,这个属性返回文本的偏移量,否则返回第一个节点的索引。endCOntainer — 返回Range对象最后一个节点对象(父节点的最后一个节点)endOffset — 返回Range结束时的偏移量(offset)特性与startOffset相同。commonAncestorContainer — 返回第一个包含该Range对象的节点。注:这些属性均为只读属性(read-only),startOffset和endOffset将在下文中有较详细的解释。下面这段代码将说明这些属性,请在Mozilla firefox里运行(支持此标准的浏览器——DOM2级,IE里将无效): <html> <head> <title>DOM Range Example</title> <script type="text/javascript"> function useRanges() { var oRange1 = document.createRange(); var oRange2 = document.createRange(); var oP1 = document.getElementById("p1"); oRange1.selectNode(oP1); oRange2.selectNodeContents(oP1); document.getElementById("txtStartContainer1").value = oRange1.startContainer.tagName; document.getElementById("txtStartOffset1").value = oRange1.startOffset; document.getElementById("txtEndContainer1").value = oRange1.endContainer.tagName; document.getElementById("txtEndOffset1").value = oRange1.endOffset; document.getElementById("txtCommonAncestor1").value = oRange1.commonAncestorContainer.tagName; document.getElementById("txtStartContainer2").value = oRange2.startContainer.tagName; document.getElementById("txtStartOffset2").value = oRange2.startOffset; document.getElementById("txtEndContainer2").value = oRange2.endContainer.tagName; document.getElementById("txtEndOffset2").value = oRange2.endOffset; document.getElementById("txtCommonAncestor2").value = oRange2.commonAncestorContainer.tagName; } </script> </head> <body><p id="p1"><b>Hello</b> World</p> <input type="button" value="Use Ranges" onclick="useRanges()" /> <table border="0"> <tr> <td> <fieldset> <legend>oRange1</legend> Start Container: <input type="text" id="txtStartContainer1" /><br /> Start Offset: <input type="text" id="txtStartOffset1" /><br /> End Container: <input type="text" id="txtEndContainer1" /><br /> End Offset: <input type="text" id="txtEndOffset1" /><br /> Common Ancestor: <input type="text" id="txtCommonAncestor1" /><br /> </fieldset> </td> <td> <fieldset> <legend>oRange2</legend> Start Container: <input type="text" id="txtStartContainer2" /><br /> Start Offset: <input type="text" id="txtStartOffset2" /><br /> End Container: <input type="text" id="txtEndContainer2" /><br /> End Offset: <input type="text" id="txtEndOffset2" /><br /> Common Ancestor: <input type="text" id="txtCommonAncestor2" /><br /> </fieldset> </td> </tr> </table> </body></html>上面的代码将不作注释了,有什么问题,在评论中留言。Range中还有一些其它的方法:setStartBefore(node) — 设置Range的相对于node节点的起始位置setStartAfter(node) — 同上setEndBefore — 设置Range的相对于node节点的结束位置setEndAfter — 同上

推荐整理分享Javascript标准DOM Range操作全集第1/3页(js dom操作方法),希望有所帮助,仅作参考,欢迎阅读内容。

Javascript标准DOM Range操作全集第1/3页(js dom操作方法)

文章相关热门搜索词:javascript中dom的含义,js dom bom,js中dom的用法,js设置dom样式,JavaScript标准内置对象在编程中的作用,js中dom的用法,javascript中dom的含义,javascript中dom,内容如对您有帮助,希望把文章链接给更多的朋友!

尽可能写"友好"的"Javascript"代码 在SearchEngine的robot搜索时,针对的type,text/html此类文本的友好度是最高的(现阶段text/xml除外),而text/javascript此类的友好度不理想,如果robot还要判断D

兼容Mozilla必须知道的知识。 我想我也该把这个东西先拿出来了。希望可以帮助大家,我也是想到了哪些就写哪些,如果有遗漏的地方,还请指出,我会加上去的。列表了多种IE与M

你所要知道JS(DHTML)中的一些技巧 这些天都没有更新日志了,这篇文章就也算是自己的一些经验谈了。简单的说一些技巧给大家,希望对你有所帮助,如果还有疑问,可以在下边留言。

标签: js dom操作方法

本文链接地址:https://www.jiuchutong.com/biancheng/384848.html 转载请保留说明!

上一篇:javascript中的对象和数组的应用技巧(javascript中的对象用于)

下一篇:尽可能写"友好"的"Javascript"代码(尽有可能的拼音)

  • 电子税务局能查到个税申报信息吗
  • 销售货物的运费计入成本吗
  • 工程设备公司经营范围
  • 2021城建税
  • 收取商标权使用费分录
  • 资产计提折旧的科目
  • 综合所得减除费用标准是什么意思
  • 2020小规模纳税人印花税怎么算
  • 开票软件找不到已开发票
  • 建筑施工企业收到工程款会计分录
  • 提供劳务企业所得税纳税义务发生时间
  • 如何确定核定征收的应税所得率
  • 办理外汇账户开户手续
  • 未分配利润调整会计分录
  • 企业收到投资款怎么处理
  • 企业所得税申报流程图
  • 企业合同约定调岗不接受辞退没赔偿成立吗
  • 账表不一致的原因和根源
  • 税务要求企业所得税预缴申报更正
  • 企业的财产清查无论什么情况,均应先通过
  • 装修待摊费用当月摊销吗
  • 第三方贴现分录
  • 以前年度记账错误
  • 需要缴纳消费税的委托加工存货,由受托方
  • 销售价格调整
  • 预收培训费怎么确认增值税
  • 腾讯手游助手如何隐藏鼠标
  • 解放双手神器说说
  • 票据质押出票如何操作
  • 招财树的养殖方法
  • mstore.exe - mstore是什么进程 有什么用
  • win10待机唤醒黑屏死机
  • 城市里创业
  • 青龙面板拉库命令
  • 政府性基金和行政事业性收费区别
  • 安斯海滩上的角眼沙蟹,塞舌尔普拉兰岛 (© Ingo Schulz/Offset by Shutterstock)
  • 零售价是含税价还是不含税价
  • 金税三期税收管理系统响应异常返回信息:没有查询
  • echarts api文档
  • 税控系统维护费普通发票可以全额抵扣吗
  • 预提费用待摊费用改为什么科目
  • 当月确认收入可以下月确认成本吗
  • 营业执照增加经营范围要钱吗
  • SQL Server Native Client下载 SQL Server Native Client安装方法
  • 捐赠货物的增值税可以税前扣除吗
  • 加计扣除的增值税怎么做账
  • 借款与报销流程设计
  • 一般纳税人销售自己使用过的物品
  • 小微企业员工人数限制
  • 建筑企业收到材料发票没有备注工程地址可以用吗
  • 退货属于什么物流
  • 公司租用私人汽车怎么操作
  • 建筑企业总公司施工可否由分公司开发票
  • 担任会计职务的英语
  • centos7如何安装yum命令
  • Win2008 Server Core如何操作?5个步骤学会Win2008 Server Core操作
  • Linux Kernel 4.2下载 更新内容一览
  • win8如何激活
  • xp系统个性化
  • linux-gnu
  • win10系统下如何安装谷歌浏览器插件?win10系统下谷歌浏览器插件的安装方法图文教程
  • win8.1怎么优化才流畅
  • win10如何打开ie8
  • linux设置服务器ip地址
  • win10系统如何查看
  • linux bfs
  • Unity3D 事件
  • 学习使用grunt来打包JavaScript和CSS程序的教程
  • win7系统安装环境
  • unityz
  • JavaScript中的变量名不区分大小写
  • android去掉状态栏第三方图标
  • shell for awk
  • Python列表list
  • 深入浅出python
  • java scripts
  • python基于django的项目
  • 浦东经济开发区官网
  • 深圳公寓出售要交什么税
  • 三证一码是什么
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设