gpt4 book ai didi

javascript - document.selection.createRange() 在 IE 中不起作用

转载 作者:行者123 更新时间:2023-11-29 15:46:47 34 4
gpt4 key购买 nike

我正在尝试制作一个简单的 ubb 编辑器,但 document.selection.createRange() 在 IE 中不起作用,它不会获得任何突出显示的文本(尝试提醒突出显示的文本但什么也得不到)。我仍然无法找到原因并解决这个问题。

You can have a look at this script in action here

window.onload = function () {
var ubb = document.getElementById('ubb_code');
var ubba = ubb.getElementsByTagName('a');//ubb buttons
var textarea = document.getElementsByTagName('textarea')[0];//editable textarea filed

//onclick to insert ubbcode
ubba[0].onclick = function() {
tag('[b]','[/b]');
};

//function used to insert ubbcode
function tag(tag1,tag2){
// code for IE
if (document.selection){
textarea.focus();
var sel = textarea.document.selection.createRange();//It DOES NOT work!
//alert(sel.text);
sel.text = tag1 + sel.text + tag2;
}else{
// code for none-IE webbrowsers
var len = textarea.value.length;
var start = textarea.selectionStart;
var end = textarea.selectionEnd;


var scrollTop = textarea.scrollTop;
var scrollLeft = textarea.scrollLeft;


var sel = textarea.value.substring(start, end);
//alert(sel);
var rep = tag1 + sel + tag2;
textarea.value = textarea.value.substring(0,start) + rep + textarea.value.substring(end,len);

textarea.scrollTop = scrollTop;
textarea.scrollLeft = scrollLeft;
}
}

最佳答案

更新:IE9 支持此功能
http://msdn.microsoft.com/en-us/library/ie/ms536394(v=vs.85).aspx

if (document.selection.createRange) {       // Internet Explorer
var range = document.selection.createRange();
var selText = range.text;
var htmltext = range.htmlText;
}

关于javascript - document.selection.createRange() 在 IE 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10326778/

34 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com