删除选中的文本粗体和前景?没有execCommand
remove selected text bold and foreground? without execCommand
我使用javascript来突出显示或加粗选定的文本范围,它的工作很好,但我怎么能使它UNBOLD和unhighlight,如果按钮再次点击,选定的范围是加粗或突出显示
我不能使用文档。Execcommand或jquery,因为我在android webview中使用它,如果我使用doc。execcommand命令像1秒或更多的工作(大文本),并使用javascript它瞬间,如果我使用Jquery(zepto或其他),文本需要AGES在webview中打开,没有它,最多需要1或2秒。
= (
我用什么使选定的文本BOLD:
function bold() {
var range = window.getSelection().getRangeAt(0);
var selectionContents = range.extractContents();
var span = document.createElement("span");
span.appendChild(selectionContents);
span.setAttribute("class","bold");
span.style.fontWeight = "bold";
range.insertNode(span);
}
和高亮(PS:高亮不会是特定的颜色,用户将通过颜色选择器进行选择,该选择器将返回#xxxxxx
function foreground() {
var range = window.getSelection().getRangeAt(0);
var selectionContents = range.extractContents();
var span = document.createElement("span");
span.appendChild(selectionContents);
span.setAttribute("class","foreground");
span.style.color = "#" + colorbyUser;
range.insertNode(span);}
我认为粗体/斜体/strike/strikeThrough/下划线只能是css中的一个特定类,我只是添加它并删除(不知道如何删除它,如果它已经设置为所选范围)
但背景和前景色不能,因为它可以为每个选择(字母/单词或更多)不同
sorry the bad English =x
编辑C-smile
我得到了它,但我不知道如何在这种情况下获得元素:
<span class="bold">Hello <span class="underline">C</span>-<span class="italic">Smile</span></span>
我怎么能删除粗体的HELLO如果用户选择只是HELLO,但不删除粗体的C-Smile??
这可能吗?没有jquery(加载一个大文档需要很长时间)或doc。执行命令(在大文档中工作需要很长时间)
如果您将范围包装成<span class="highlight">
然后,要删除它,您需要展开它—获取跨度的内容节点并用其内容节点替换该跨度。
这正是jQuery中$.unwrap()的作用
相关文章:
- 有没有任何方法可以将控制器从文件加载到ui路由器$stateProvider中
- D3在一个调用中绘制不同的SVG形状,没有可见性
- 我的jQuery插件参数没有正确启动,遇到了问题
- 视频HTML没有'无法在Internet Explorer 11上工作
- Firebase迁移-简单的Firebase.set没有'不再工作了——旧的还是新的
- 节点Js:How to catch a“;没有这样的文件或目录“;读取线模块出错
- document.open/document.write没有正确地清除chrome中的文档——这是chrome的错误吗
- angular.js没有'无法在PhoneGap中处理视图标记
- 有没有一种方法可以添加相同的项目val=“0”;4〃;到JavaScript中数组的每个对象
- 有没有一种方法可以防止img get请求使用css或js发生
- Javascript,有没有一种方法可以将数组写成没有逗号或空格的单个文本字符串
- JavaScript中的函数和对象之间没有区别吗?
- JSON.parse没有'不能使用Javascript
- 另一个ajax调用中的Jquery ajax调用在for循环中没有按预期工作
- Chrome扩展没有't在重新加载之前考虑期权价值
- 我的AngularJS表达式没有'不起作用
- 有没有一个javascript图形绘制库可以进行气球树布局
- document.execCommand没有'不能在angularJS中工作
- execCommand()没有't〃;unbold”;文本
- 删除选中的文本粗体和前景?没有execCommand