2012-11-15 13 views
29

मैं केंद्रित पैराग्राफ तत्व (<p>) पर TinyMCE संपादक में टेक्स्ट डालने का प्रयास कर रहा हूं, जहां कर्सर है लेकिन कोई भाग्य नहीं है !!TinyMCE संपादक में टेक्स्ट सम्मिलित करना जहां कर्सर

var elem = tinyMCE.activeEditor.dom.get('tinymce'); 
var child = elem.firstChild; 
while (child) { 
    if (child.focused) { 
     $(child).insertAtCaret("some text"); 
    } 
    child = child.nextSibling; 
} 

अगर किसी को यह हल करने के बारे में कोई विचार है तो मैं बहुत आभारी रहूंगा।

+0

देखें http://stackoverflow.com/questions/13849115/insert-text-at-current-position-tinymce-ie9 – zhizhideng

उत्तर

68

आपको mceInsertContent कमांड का उपयोग करना चाहिए। TinyMCE documentation देखें।

tinymce.activeEditor.execCommand('mceInsertContent', false, "some text"); 
+0

बहुत बहुत धन्यवाद !!! मैं बिना किसी किस्मत के दो दिनों के लिए ऐसा करने की कोशिश कर रहा हूं !!! – Ruba

+1

लेकिन मुझे आपकी मदद की ज़रूरत है! आईई ब्राउज़र के लिए पाठ हमेशा शुरुआत में डाला जाता है! मुझे क्या करना चाहिए? – Ruba

+1

मैं बिना किसी समस्या के आईई 7 और आईई 8 के लिए इस कोड लाइन का उपयोग करता हूं। और TinyMCE IE6 + पर काम करता है। शायद आपकी समस्या कहीं और है। – Magus

9

ऊपर जवाब अच्छा है, लेकिन यह उनका कहना है कि यह किसी भी HTML डालने के लिए इस्तेमाल किया जा सकता लायक है।

उदाहरण के लिए:

tinymce.activeEditor.execCommand('mceInsertContent', false, " <b>bolded text</b> "); 

वर्तमान कर्सर स्थान पर बोल्ड पाठ डाल देंगे।

कुछ अन्य रोचक टिप्पणियों:

mceInsertRawHTML भी काम करता है, लेकिन, लेकिन YMMV tinyMCE की मेरी संस्करण में वर्तमान पंक्ति के आरंभ में कर्सर रखें जाता है।

mceReplaceContent भी काम करता है, लेकिन जब मेरे कर्सर वर्तमान सामग्री के अंत में था तब मेरे मामले में अच्छी तरह से काम नहीं किया।

फिर से, अधिक जानकारी के लिए the documentation देखें।

संबंधित मुद्दे