5
我想在選定的文本週圍插入我自己的自定義標籤和腳本。這樣在用戶選擇上插入自定義標籤
var range = window.getSelection().getRangeAt(0);
var sel = window.getSelection();
range.setStart(sel.anchorNode, sel.anchorOffset);
range.setEnd(sel.focusNode,sel.focusOffset);
highlightSpan = document.createElement("abbr");
highlightSpan.setAttribute("style","background-color: yellow;");
highlightSpan.setAttribute("onmouseout","javascript:HideContentFade(\"deleteHighlight\");");
highlightSpan.setAttribute("onmouseover","javascript:ShowHighlighter(\"deleteHighlight\",\""+id_val+"\");");
highlightSpan.appendChild(range.extractContents());
range.insertNode(highlightSpan);
某事,這工作在正常情況下,但如果我在不同的段落選擇一些文本的extractContents API將驗證返回的HTML,並把額外的標籤,使其有效的HTML。我想要的是確切的HTML,沒有額外的JavaScript驗證。
這有什麼辦法可以做到嗎? 我已經嘗試過How can I highlight the text of the DOM Range object?中提到的方式,但事情是我想要用戶特定的亮點,所以如果A添加了一些亮點B應該無法看到它。爲此我準備好了我的後端代碼。