2013-08-27 11 views
19

मेरी लिपि में, मैं अपने खुद के निर्देशों को उनके रास्ते जाने से पहले, CKEDITOR को ready में रहने के लिए प्रतीक्षा करना चाहता था। इसलिए मैं CKEDITOR API परामर्श किया और निम्न स्थिति लिखा है:CKEDITOR.status "तैयार" को कैसे पुनर्प्राप्त करें?

if(CKEDITOR.status == "ready"){ 
//execute my code when ready 
} 

हालांकि, स्थिति कभी loaded से status करने के लिए बदल जाता है। जाहिर है मैंने किसी अन्य राज्य को भी नहीं देखा।

अधिक कार्य विशिष्ट, मैं उस पल को पकड़ना चाहता था जब CKEDITOR ने संतुष्ट = "सत्य" की इनलाइन प्रतिस्थापन को संशोधित करना पूरा कर लिया हो। यही वह समय है जब मैं अपने जेएस कोड के साथ आगे बढ़ना चाहता हूं।

कोई सुराग?

if (CKEDITOR.status == 'loaded') { 
    // The API can now be fully used. 
    doSomething(); 
} 

या instanceReady उपयोग करते हैं, जैसे:

CKEDITOR.on('instanceReady', function(evt){ 
    //ready 
    //do something 
}); 
+0

मैं सुनिश्चित नहीं हूं कि CKEDITOR.status या CKEditor 4 में "लोडेड" घटना काम क्योंकि AFAIK "देरी लोड हो रहा है" प्रणाली CKEditor का एक और बात यह है कि की शुरूआत के साथ समाप्त हो गया है है 4.x श्रृंखला। और यदि वे काम करते हैं, तो वे पृष्ठ के संपादकों के प्रारंभ से संबंधित नहीं हैं, आपको प्रत्येक इंस्टेंस के लिए श्रोताओं का उपयोग करना होगा जैसा कि प्रदान किए गए उत्तरों में दिखाया गया है। – AlfonsoML

उत्तर

47

आप जब एपीआई पूरी तरह से भरी हुई है, अपने कोड निष्पादित CKEDITOR.loaded घटना उपयोग करना चाहते हैं:

CKEDITOR.on('loaded', function(evt) { 
    // your stuff here 
}); 

आप जब किसी भी नया उदाहरण के लिए तैयार है अपने कोड निष्पादित करने के लिए चाहते हैं, CKEDITOR.instanceReady घटना का उपयोग :

CKEDITOR.on('instanceReady', function(evt) { 
    // your stuff here 
}); 

आप अपने कोड निष्पादित करने के लिए चाहते हैं जब एक विशेष उदाहरण के लिए तैयार है, तो का उपयोग CKEDITOR.editor.instanceReady घटना:

CKEDITOR.replace('editor', { 
    on: { 
     instanceReady: function(evt) { 
      // your stuff here 
     } 
    } 
}); 
+1

संकेत: संपादक जिसके लिए ईवेंट ट्रिगर 'evt.editor' के अंदर है, मूल तत्व' evt.editor.element के अंदर है। $ ' – Markus

7

वहाँ CKeditor में कोई ready स्थिति, आप loaded की तरह उपयोग कर सकते हैं प्रत्यक्ष विशेषता मान और exampleReady विधि।

  • अगर आप अधिसूचित होने की मांग करते हैं तो ईवेंट श्रोता का उपयोग करें जब CKEDITOR ने अपनी लोडिंग प्रक्रिया पूरी नहीं की है, बल्कि पूरे प्रसंस्करण को पूरा कर लिया है। विशेष रूप से एचटीएमएल प्रतिस्थापन और इंजेक्शन।
+0

हां, अनुक्रमिक क्रम में केवल नीचे ही है। हालांकि, मैं उस पल को पकड़ना चाहता था जब CKEDITOR ने संतुष्ट = "सत्य" की इनलाइन प्रतिस्थापन को संशोधित करना पूरा कर लिया हो। कोई सुराग। अनलोडेड: एपीआई अभी तक लोड नहीं हुआ है। basic_loaded: मूल API सुविधाएं उपलब्ध हैं। basic_ready: मूल एपीआई पूर्ण कोर कोड लोड करने के लिए तैयार है। लोड किया गया: एपीआई पूरी तरह से इस्तेमाल किया जा सकता है। – feder

+1

@feder उस मामले में आप 'insanceReady' का उपयोग कर सकते हैं –

1

@Sudhir के रूप में बताया, वहाँ में कुछ अंतर है

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