社区
JavaScript
帖子详情
关于TextRange的解析?
jiezi316
2009-01-20 03:57:22
我们在使用HTML编辑器的时候往往会发现这样一个功能,就是你选择一句话或者一段文字,如果这个文字有加粗,斜体等样式,那么HTML编辑器相应的按钮(例如:加粗和斜体功能按钮)就会高亮的标示出来,以方便我们操作
这个是怎么实现的呢?
...全文
98
7
打赏
收藏
关于TextRange的解析?
我们在使用HTML编辑器的时候往往会发现这样一个功能,就是你选择一句话或者一段文字,如果这个文字有加粗,斜体等样式,那么HTML编辑器相应的按钮(例如:加粗和斜体功能按钮)就会高亮的标示出来,以方便我们操作 这个是怎么实现的呢?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
jiezi316
2009-01-21
打赏
举报
回复
不是的,
是利用queryCommandState这个来判断
hrdesign
2009-01-21
打赏
举报
回复
呵呵,刚来上班。这样啊,原理一样的,首先选取选择文字的Range对象document.selection.createRage()的文本,然后然后在创建个Range对象对其进行处理,哪你说的Strong为例(IE):
<script type="text/javascript">
function bold(){
var range1 = document.selection.createRange().text;
var range2 = document.body.createTextRange();
if(range1){
range2.findText(range1)
if(range2.parentElement().nodeName.toLowerCase() == 'strong'){
document.getElementById('boldimg').style.border='solid 1px red'
}else{
document.getElementById('boldimg').style.border='0'
}
}
}
</script>
<span id="boldimg">加粗按钮</span>(当选取了粗体时显示个边框)
<div onclick = 'bold()'>fafafafaf<strong>dfadfsdfkasd</strong>jfjaskdfjkasdjfksadjkfjk </div>
jiezi316
2009-01-21
打赏
举报
回复
算了,我自己已经解决了结贴吧!哎~~~~~
rjzou2006
2009-01-21
打赏
举报
回复
结贴吧!
jiezi316
2009-01-20
打赏
举报
回复
晕倒,我问的不是如何实现对选择的文本加粗,而是问根据选择的文本是否含有加粗,斜体等样式,来设置编辑器上的对应的工具按钮。
比如 html是 <strong>nihao</strong>,那么我在编辑器里选择了nihao这句话,那么编辑器上加粗的按钮就应该是高亮。表示改段文本已经设置过加粗的样式了。
hrdesign
2009-01-20
打赏
举报
回复
如果你用Range对象的话,对于IE,通过document.selection.createRage()创建Range对象获取选择的文本,然后在创建个Range对象对其进行处理,大致是这样的(比如加粗):
<script type="text/javascript">
function bold(){
var range1 = document.selection.createRange().text;
var range2 = document.body.createTextRange();
range2.findText(range1)
range2.pasteHTML('<b>'+range1+'</b>');
}
</script>
<div onclick = 'bold()'>fafafafafdfadfsdfkasdjfjaskdfjkasdjfksadjkfjk</div>
你可以测试一下这个代码,只针对IE啊
zjsfdxbao
2009-01-20
打赏
举报
回复
我的想法比较普通,一直往上面找parentElement,只要找到<B>标签那就高亮显示加粗,或者解析该元素的style
IFrame 系列4 ---- document.selection 全方位兼容
解析
以及
Text
Range
[create
Text
Range
,create
Range
]对象的深入
解析
于document.selection 最常见的就是在一些插件中,关于写法不在追究,其实一般的写法只是为了判断当前浏览器是不是现代浏览器而已【 划重点:此处的现代浏览器非现代浏览器请自行百度,绝非简单的ie非ie 】 通过...
Java
解析
Excel生成Word POI Spire.Doc
Java
解析
Excel生成Word POI Spire.Doc 前言 写文档的时候需要将Excel中整理的功能点按一定的格式插入到word文档中。项目的功能点比较多,手动搬运耗时耗力,打算偷个懒,用代码帮一下忙。 逻辑:读取Excel文件进行...
如何利用Aspose 取 PPT中表格的值,包括行列信息,每个单元格的宽度,高度,每个单元格中的值。
最近遇到需要
解析
PPT中表格的数据的需求。从来没有做过,第一次接触,说下实现。 主要是通过Aspose.Slides dll,Aspose.Slides 是商业的,自己研究就好。
解析
,拿到PPT的Shape,在Shape中,找到对应的Table。 然后...
IE浏览器下javascript中的
Text
Rabge对象
解析
Text
Range
对象是动态HTML(DHTML)的高级特性,使用它可以实现很多和文本有关的任务,例如搜索和选择文本。文本范围让您可以选择性的将字符、单词和句子从文档中挑选出来。...boundingHeight 获取绑定
Text
Range
java
解析
word文档多层标题_JAVA合并多个word文档根据文章标题生成目录
j++) {if(p.getChildObjects().get(j).getDocumentObjectType().equals(DocumentObjectType.
Text
_
Range
)) {
Text
Range
range
0=(
Text
Range
) p.getChildObjects().get(j);
range
0.getCharacterFormat().setFontName(...
JavaScript
87,921
社区成员
224,619
社区内容
发帖
与我相关
我的任务
JavaScript
Web 开发 JavaScript
复制链接
扫一扫
分享
社区描述
Web 开发 JavaScript
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章