我有一个具有格式选项的contenteditable div.我希望能够点击,要说大胆的按钮,插入<span class="bold">并</span>分别到我的光标的左侧和右侧.我相信我已成功做到了这一点.但是,我不知道如何将光标放在span中,以便用户可以开始输入粗体文本.
我目前正在使用的功能:
function bold(text,clearSelection) {
text = text.replace(/\r\n/g,"<br>");
var sel, range, html;
var tn = false;
//Here i am adding the span element
if (window.getSelection) {
sel = window.getSelection();
if (sel.getRangeAt && sel.rangeCount) {
range = sel.getRangeAt(0);
range.deleteContents();
tn = document.createElement("span");
tn.className="bold";
tn.innerHTML=text;
range.insertNode(tn);
}
}
if(clearSelection){
//if the selection length is longer than 0, move cursor to end of selection
if(sel.toString().length >0){
range = window.getSelection().getRangeAt(0);
range.setStart(range.endContainer,range.endOffset);
document.getElementById('text').focus();
} else {
/*Do something if …Run Code Online (Sandbox Code Playgroud) 这可能是一个快速修复,但我是VBA的新手,我有点困惑.我有一个模块:
Function classify (r As Range)
Debug.Print("Text")
End Function
Function foo(r As Range)
Debug.Print(r.Count)
End Function
Run Code Online (Sandbox Code Playgroud)
模块之前和之后都有工作代码.
如果,在excel的单元格中,我写入=foo(A1)然后按回车键,我得到以下输出:
1
Text
Run Code Online (Sandbox Code Playgroud)
为什么?foo如何调用分类?而且,如果我只是打电话给'= classify(A1)',我得到
Text
Text
Run Code Online (Sandbox Code Playgroud)
分类是否已设置为始终被调用?任何帮助是极大的赞赏