Javascript placeCaretAtEnd在Firefox中似乎不起作用
我有一个内容可编辑的DIV,其中包含一个带有文本的p标记,我正在使用placeCaretAtEnd将插入符号定位在p标记内内容的末尾。除了Firefox(v32.0.3)之外,这似乎适用于所有浏览器。在这一点上,插入符号似乎消失了 据我所知,placeCaretAtEnd JS函数应该与Firefox完全兼容。知道为什么在这种情况下不起作用吗 工作示例:Javascript placeCaretAtEnd在Firefox中似乎不起作用,javascript,Javascript,我有一个内容可编辑的DIV,其中包含一个带有文本的p标记,我正在使用placeCaretAtEnd将插入符号定位在p标记内内容的末尾。除了Firefox(v32.0.3)之外,这似乎适用于所有浏览器。在这一点上,插入符号似乎消失了 据我所知,placeCaretAtEnd JS函数应该与Firefox完全兼容。知道为什么在这种情况下不起作用吗 工作示例: 示例文本。示例文本 $(“#按钮”).bind('click',function(){ placeCaretAtEnd(document.g
示例文本。示例文本
$(“#按钮”).bind('click',function(){
placeCaretAtEnd(document.getElementById('段落'))
});
函数placeCaretAtEnd(el){
el.focus();
if(typeof window.getSelection!=“未定义”
&&typeof document.createRange!=“未定义”){
var range=document.createRange();
范围。选择节点内容(el);
范围。塌陷(假);
var sel=window.getSelection();
选择removeAllRanges();
选择添加范围(范围);
}else if(typeof document.body.createTextRange!=“未定义”){
var textRange=document.body.createTextRange();
textRange.moveToElementText(el);
textRange.collapse(false);
textRange.select();
}
}
我解决了这个问题,将光标放在contenteditable div中,然后使用placeCaratand函数移动光标
首先,我给了那个部门一个身份证,这样就不会有混乱了
$('#button').bind('click', function() {
$('div#id').focus();
placeCaretAtEnd(document.getElementById('paragraph'))
});
我一直在搜索,虽然我知道这有点像黑客,但这是一个解决方案
$('#button').bind('click', function() {
$('div#id').focus();
placeCaretAtEnd(document.getElementById('paragraph'))
});