Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/433.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript range.setStartBefore和range.setEndAfter don';t在Edge中工作,在contenteditable中使用IE11_Javascript_Contenteditable_Rich Text Editor - Fatal编程技术网

Javascript range.setStartBefore和range.setEndAfter don';t在Edge中工作,在contenteditable中使用IE11

Javascript range.setStartBefore和range.setEndAfter don';t在Edge中工作,在contenteditable中使用IE11,javascript,contenteditable,rich-text-editor,Javascript,Contenteditable,Rich Text Editor,虽然没有错误,Edge和IE11都支持和,但什么也没有发生。我检查了每个属性,所有内容看起来都正常,但没有突出显示/选择整个范围 这适用于Chrome、Firefox和Opera 交互,在LROM IPHOM文本的中间选择乱数假文或单词。Chrome、Firefox和Opera将按照预期选择其余的lorem ipsum文本。Edge和IE11什么都不做 演示: document.querySelector('div').addEventListener('mouseup',function()

虽然没有错误,Edge和IE11都支持和,但什么也没有发生。我检查了每个属性,所有内容看起来都正常,但没有突出显示/选择整个范围

这适用于Chrome、Firefox和Opera

交互,在LROM IPHOM文本的中间选择乱数假文或单词。Chrome、Firefox和Opera将按照预期选择其余的lorem ipsum文本。Edge和IE11什么都不做

演示:

document.querySelector('div').addEventListener('mouseup',function(){
var range=window.getSelection().getRangeAt(0);
range.setStartBefore(range.startContainer.parentNode);
range.setEndAfter(range.endContainer.parentNode);
});

我的同僚们都是精英。从本质上讲,这是一种理性,是一种理性,是一种非理性的理性

再见

虽然Edge&IE11无法直观显示,但仍在选择范围。通过添加
range.deleteContents()
作为函数回调中的最后一行

但是,这意味着任何编辑行为,如更改样式的富文本编辑,将仅使用视觉上选择/突出显示的内容,即使实际范围不同!:/