मैं चयनित टेक्स्ट के चारों ओर अपने स्वयं के कस्टम टैग और स्क्रिप्ट डालना चाहता हूं। इसउपयोगकर्ता चयन पर कस्टम टैग डालने
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 एपीआई एचटीएमएल लौटे मान्य है और यह वैध HTML बनाने के लिए अतिरिक्त टैग डाल देंगे। मैं सटीक HTML चाहता हूं जिसे अतिरिक्त जावास्क्रिप्ट द्वारा सत्यापित किए बिना चुना गया था।
क्या ऐसा कोई तरीका है? मैंने How can I highlight the text of the DOM Range object? में उल्लिखित तरीके से इसका प्रयास किया है, लेकिन बात यह है कि मैं उपयोगकर्ता विशिष्ट हाइलाइट्स चाहता हूं ताकि अगर ए ने कुछ हाइलाइट जोड़ा है तो बी इसे देखने में सक्षम नहीं होना चाहिए। इसके लिए मेरे पास बैकएंड कोड तैयार है।