मैं सिर्फ एचटीएमएल/जेएस का उपयोग कर विंडोज 8 विकास के साथ शुरू कर रहा हूं। मैंने वाहन के प्रमुख इकाइयों और टेलीविज़न को लक्षित करने वाले ऐप्स के लिए jQuery विकास में विसर्जित पिछले कुछ महीनों में बिताया है।jQuery के साथ विंडोज 8 मेट्रो ऐप का निर्माण
इसमें कूदते हुए, मैंने सोचा कि संक्रमण सरल होगा। मेरे पास मेरी साइट का डिज़ाइन और संरचना सबसे अधिक भाग के लिए तैयार है और मेरे पिछले काम के लिए उपयोग की जाने वाली कुछ प्रथाओं का पालन करने की उम्मीद कर रहा था।
यही है, मैं अनिवार्य रूप से एक पृष्ठ ऐप बनाना चाहता हूं। मुख्य default.html फ़ाइल शीर्ष नेविगेशन/शीर्षक और एक अन्य div होगा। अन्य div का उपयोग अन्य सभी पृष्ठों, परियोजना के भीतर सभी अलग-अलग HTML फ़ाइलों में लोड करने के लिए किया जाएगा।
वैश्विक कार्यों और प्रमुख कार्यक्षमता सभी जावास्क्रिप्ट फ़ाइल, application.js में रहेंगे। फिर कोई भी पृष्ठ-विशिष्ट जावास्क्रिप्ट प्रत्येक HTML फ़ाइल के शीर्ष पर स्थित होगा।
मुझे जल्दी से यह महसूस हो रहा है कि यह एक समस्या है। मेरे पृष्ठों में लोड करने के लिए jQuery.load() का उपयोग करना मेरे ऐप में सुरक्षा त्रुटियों का कारण बनता है।
JavaScript runtime error: Unable to add dynamic content. A script attempted to inject dynamic content, or elements previously modified dynamically, that might be unsafe. For example, using the innerHTML property to add script or malformed HTML will generate this exception. Use the toStaticHTML method to filter dynamic content, or explicitly create elements and attributes with a method such as createElement.
मैं वास्तव में माइक्रोसॉफ्ट-विशिष्ट सामान का एक समूह सीखने से बचने की उम्मीद कर रहा था। मुझे लगता है कि यह बहुत अच्छा है कि उन्होंने बहुत सारे टूल प्रदान किए हैं और क्या नहीं, और शायद मैंने उन्हें पर्याप्त रूप से उपयोग नहीं किया है, लेकिन सब कुछ मेरे लिए बहुत कठोर लगता है और जो मैं करने की कोशिश कर रहा हूं या पहले से ही पूरा किया जा सकता है jQuery के साथ। मैं वह हूं जो वास्तव में जानना पसंद करता है कि क्या हो रहा है और इसका पूरा नियंत्रण है।
टेम्पलेट्स और नमूना परियोजनाओं को भी देखकर, मुझे वास्तव में सभी बार-बार कोड पसंद नहीं है। उदाहरण के लिए, सभी एकल HTML फ़ाइल सभी समान संदर्भों को घोषित करती हैं। मैं अपने संदर्भ बार और मेरे टाइटल बार जैसे अनुभागों को एक बार लिखना चाहता हूं, और मेरे पूरे प्रोजेक्ट में उस कोड को कॉपी/पेस्ट नहीं करना है।
क्या चीजों को जिस तरह से मैं उम्मीद कर रहा था, और एक पृष्ठ ऐप बनाने का कोई तरीका है? क्या उनके पास jQuery के .load() के लिए अपना स्वयं का विकल्प है?
सही दिशा में मुझे इंगित करने में कोई भी मदद की सराहना की जाएगी!
संपादित करें 2012/08/14:
मैं इस सवाल से ठीक उपयोग करने की कोशिश की है: Using jQuery with Windows 8 Metro JavaScript App causes security error
इस सुरक्षा चेतावनी से छुटकारा मिलता है और मैं jQuery.load का उपयोग कर HTML में लोड कर सकते हैं() । हालांकि, डोम एक्सप्लोरर को देखते हुए, मेरा एचटीएमएल मेरी लिपियों से अलग हो रहा है।
मैंने MSApp.execUnsafeLocalFunction() के अंदर अपना .load() कॉल लपेटने का भी प्रयास किया है, लेकिन फिर भी मेरी फ़ाइल अभी भी सभी स्क्रिप्टों से छीन ली गई है। क्या देता है?
+1 संभवतः विंडोज 8 में "अनुमत" नहीं है, इस प्रश्न का उत्तर देखने के लिए प्रतीक्षा नहीं कर सकता! –
संभावित डुप्लिकेट [विंडोज 8 मेट्रो जावास्क्रिप्ट ऐप के साथ jQuery का उपयोग सुरक्षा त्रुटि का कारण बनता है] (http://stackoverflow.com/questions/10859523/using-jquery-with-windows-8-metro-javascript-app-causes-security- त्रुटि), प्रश्न में एक उत्तर भी है जो मदद कर सकता है। – nfechner
कोशिश की कि ठीक है। मुझे अब त्रुटियां नहीं मिल रही हैं, लेकिन मेरे पृष्ठों पर लिपियों को अभी भी निष्पादित नहीं किया गया है। – Danny