首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何使用jQuery将css应用于savedRange文本选择?

如何使用jQuery将css应用于savedRange文本选择?
EN

Stack Overflow用户
提问于 2011-02-04 04:27:37
回答 3查看 1.4K关注 0票数 1

是否可以在所选savedRange文本周围应用css或换行标签。我使用的是jquery。

这不起作用:

代码语言:javascript
复制
$(savedRange).css(...);
$(savedRange).wrap(...);
EN

回答 3

Stack Overflow用户

发布于 2011-02-08 07:57:41

如果你说的"savedRange“指的是这样的东西:

代码语言:javascript
复制
selection = window.getSelection()
savedRange = selection.getRangeAt(0)

然后,您必须首先为范围创建一个包装器,如下所示:

代码语言:javascript
复制
wrapper = document.createElement('span')
savedRange.surroundContents(wrapper)
selection.selectAllChildren(wrapper)

然后,您可以应用样式:

代码语言:javascript
复制
$(wrapper).css(...)
票数 1
EN

Stack Overflow用户

发布于 2011-02-08 07:37:31

它不会对选定的文本起作用,但它会将一个带有某种样式的HTML标记放在另一个HTML元素周围。

代码语言:javascript
复制
$(savedRange).wrap('<span style="color:red" />');
票数 0
EN

Stack Overflow用户

发布于 2018-07-07 03:03:23

只需使用以下命令:

代码语言:javascript
复制
var sel = window.getSelection();
var range = sel.getRangeAt(0);
var tag = range.commonAncestorContainer.parentElement;

$(tag).css({'color':'red'});
// you can add css again using jquery

希望能帮上忙。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4891338

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档