Closed. This question is off-topic。它当前不接受答案。
                            
                        
                    
                
                            
                                
                
                        
                            
                        
                    
                        
                            想改善这个问题吗? Update the question,所以它是on-topic,用于堆栈溢出。
                        
                        3年前关闭。
                                                                                            
                
        
我有一个可编辑的分隔线:

<div id="textArea" contenteditable></div>


我想在用户第一次关注跨度时用跨度包围用户的光标:

var textArea = document.getElementById("textArea");
textArea.onfocus = function(event){
    var inner = textArea.innerHTML;
    if(inner == " " || inner == ""){
        var range = textArea.getRangeAt(0);
        var span = document.createElement("span");
        span.innerHTML = "&#8203;";
        range.insertNode(span);
        range.setStart(span, 0);
        range.setEnd(span, 1);
        textArea.removeAllRanges();
        textArea.addRange(range);
    }
}


但这不起作用,什么也没发生。

我究竟做错了什么?

编辑:错误发生后

var range = textArea.getRangeAt(0);


因为alert(“ Test”);之后就不起作用了!

最佳答案

if(inner =“”)应该是if(inner ===“”)

关于javascript - 按跨距的包围元素onfocus无法正常工作,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37487998/

10-10 05:17