/ / Emscripten: कंसोल (कुछ प्रकार के) के साथ प्रॉम्प्ट को प्रतिस्थापित करना - जावास्क्रिप्ट, एचटीएमएल, ईएमएसस्क्रिप्ट

Emscripten: (किसी तरह की) सांत्वना के साथ त्वरित की जगह-जावास्क्रिप्ट, एचटीएमएल, Emscripten

मेरे पास (इंटरैक्टिव - पायथन खोल की तरह) सी ++ हैकंसोल एप्लिकेशन और Emscripten के साथ खेल रहा था (सी ++ से जेएस तक ट्रांसकंपाइल करने के लिए)। सब ठीक है, लेकिन मैं जेएस के फोकस-चोरी संकेत को कुछ कम के साथ प्रतिस्थापित करने की तरह हूं ... सनकी।

मैंने क्या कोशिश की है: मैंने एक इनपुट टेक्स्टरेरा और जेनरेट किए गए एचटीएमएल के लिए एक बटन जोड़ा, और प्रॉम्प्ट-इनोकोकिंग लाइन को थोड़ी देर लूप के साथ बदल दिया (जब तक बटन दबाया नहीं जाता तब तक लूपिंग)। यह बहुत अच्छी तरह से काम नहीं करता है, खाली लूप ब्राउज़र को जम गया (जिसे शायद उम्मीद है, लेकिन जेएस में कोई नींद नहीं है)।

तो, संक्षेप में, मैं जो चाहता हूं वह यह लेआउट है:

output textarea / output textarea / output textarea / output textarea
output textarea / output textarea / output textarea / output textarea
output textarea / output textarea / output textarea / output textarea
output textarea / output textarea / output textarea / output textarea

input textarea <ok button>

और व्यवहार:

while (1)
let program work until input requested
wait for user to clik on the <ok button> above

(एमसीसी) उत्पन्न जेएस कोड को संशोधित करके इसे प्राप्त करने का कोई आसान तरीका? (मुझे पता है कि (मेरा) मूल कोड संशोधित करके इसे कैसे प्राप्त किया जाए, लेकिन यदि संभव हो तो उससे बचना चाहेंगे)

उत्तर:

जवाब के लिए 0 № 1

वास्तव में यह सुनिश्चित नहीं है कि आप वास्तव में क्या करने की कोशिश कर रहे हैं।

कृपया के बारे में Emscripten दस्तावेज पढ़ें ब्राउज़र सीमाएं पहले, हालांकि।

आप उपयोग कर सकते हैं window.setTimeout प्रत्येक एन मिलीसेकंड को कॉलबैक पंजीकृत करने और अपना करने के लिए आउटपुट textarea.

और यदि आप उपयोगकर्ता इनपुट के लिए "प्रतीक्षा" करना चाहते हैं तो ब्राउज़र मुख्य लूप पर नियंत्रण देने के लिए सबसे अच्छा है और बटन पर कॉलबैक कॉल करें, जो प्रोसेसिंग (टेक्स्ट इनपुट का उपयोग करके) को फिर से शुरू करता है।