2012-05-01 13 views
12

के अंदर काम नहीं कर रहा है, मैं समाधान की तलाश में कई घंटों के बाद यहां आ रहा हूं और इस समस्या को ठीक करने के लिए अलग-अलग दृष्टिकोणों की कोशिश कर रहा हूं, जिसमें मुझे JQuery मोबाइल और मेरा आईपैड ऐप है।JQuery मोबाइल UIWebView

जो मैं करने की कोशिश कर रहा हूं वह फ़्यूज़न चार्ट के साथ एक रिपोर्टिंग ऐप है। मैंने अलग-अलग तरीकों का उपयोग करके वेब दृश्यों (UIWebView) के भीतर चार्ट सफलतापूर्वक प्रस्तुत किए हैं, और विभिन्न उदाहरणों का पालन करते हुए, लेकिन अब मैं जो करना चाहता हूं वह JQuery मोबाइल ढांचे का उपयोग करके एक ही कार्य को पूरा कर रहा है।

मैं फोनगैप का उपयोग करके नहीं हूं और मैंने JQuery मोबाइल + एक्सकोड एकीकरण (मुझे लगता है) के बारे में पत्र के चरणों का पालन किया है। चार्ट मेरे डेस्कटॉप और मोबाइल ब्राउज़र (आईपैड, आईफोन 4, और आईपॉड टच 2 जी) पर किसी समस्या के बिना लोड होते हैं, लेकिन मेरे UIWebView के अंदर लोड होने का कोई तरीका नहीं है (भले ही मैं एक ही सटीक कोड का उपयोग कर रहा हूं)।

1) आवश्यक फ़ाइलें जोड़ना (जे एस, सीएसएस, और एचटीएमएल) परियोजना के लिए उन्हें स्थानीय स्तर पर उपयोग करने के लिए:

यह मैं क्या कर रहा है। उन्हें जोड़ने के बाद मैं "संकलन स्रोत" से "जेड एक्सटेंशन" कॉपी करने के लिए .js एक्सटेंशन के साथ सबकुछ ले जाता हूं। यह इस तरह दिखता है:

enter image description here

enter image description here

2) वेब दृश्य में मेरी एचटीएमएल परीक्षण फ़ाइल (page_A1.html) लोड:

enter image description here

3) है कि सब कुछ की जाँच करें HTML पथ पर सही पथ और ढांचे के नवीनतम संस्करण के साथ स्थापित किया गया है:

enter image description here

4) केवल रिक्त वेब दृश्य प्राप्त करने के लिए बनाएं और चलाएं।

अगर मैं इस तरह एक चेतावनी के साथ जावास्क्रिप्ट का परीक्षण:

enter image description here

यह चेतावनी जावास्क्रिप्ट साबित दिखाएगा काम कर रहा है:

enter image description here

और अगर मैं पर कुछ पाठ रखा कंटेनर जहां चार्ट प्रदर्शित किया जाना चाहिए:

enter image description here

मैं वेब दृश्य के अंदर का पाठ मिल जाएगा:

enter image description here

मैं भी स्थानीय लोगों के बजाय दूरस्थ ढांचे लिंक और कोई भाग्य के साथ पुस्तकालयों के पुराने संस्करण के साथ परीक्षण किया है।कुछ भी नहीं है अलग अलग होता है:

enter image description here

ऐसा नहीं है कि

$(document).ready(function(){ 

देखा जा रहा है या xcode द्वारा लाया मेरे लिए obvius लगता है।

यह मैं हासिल करना चाहते हैं क्या है:

enter image description here

मैं और क्या परीक्षण करने के लिए पता नहीं है। यदि आपको कोई विचार है तो मैं आभारी से अधिक होगा।

उत्तर

10

लोगों को न छोड़ें। मैं अंत में यह मिला।

वेब विकास दिनों से कुछ पुरानी आदतों ने मुझे यहां खेला।

यह पता tuns आप अपने सीएसएस के लिए भीतरी निर्देशिका संरचना को निर्दिष्ट करने की जरूरत नहीं है और जे एस फ़ाइलें तो यह:

<link rel="stylesheet" href="css/jquery.mobile-1.1.0.min.css" /> 

<script src="js/jquery-1.7.2.min.js"></script> 

<script src="js/jquery.mobile-1.1.0.min.js"></script> 

shoudl वास्तव में Xcode में इस तरह:

<link rel="stylesheet" href="jquery.mobile-1.1.0.min.css" /> 

<script src="jquery-1.7.2.min.js"></script> 

<script src="jquery.mobile-1.1.0.min.js"></script> 

यकीन नहीं होता इसे खोजने के लिए मुझे कितना समय लगा।

अब यह काम कर रहा है।

+1

अच्छा .. आपने अपना जीवन बचाया .. – rdurand

+0

मुझे एक ही समस्या है, लेकिन एक accordion परीक्षण के साथ। क्या आप मेरी मदद कर सकते हैं? –

+0

क्या यहां पोस्ट की गई जानकारी पहले से ही आपकी मदद नहीं कर रही है? यदि नहीं, तो आपके पास क्या विशिष्ट समस्या है? –

4

ऐसा करने का सही तरीका जेएस फ़ाइल को स्ट्रिंग में लोड करना है और UIWebView की [stringByEvaluating जावास्क्रिप्ट FromString: @ "जावास्क्रिप्ट यहां ..."] विधि का आह्वान करना है।

NSString *filePath = [[NSBundle mainBundle] pathForResource:@"content" ofType:@"js" inDirectory:@""]; 
NSData *fileData = [NSData dataWithContentsOfFile:filePath]; 
NSString *jsString = [[NSMutableString alloc] initWithData:fileData encoding:NSUTF8StringEncoding]; 

[webView stringByEvaluatingJavaScriptFromString:jsString]; 

हालांकि यह बहुत अलग नहीं है तो उन्हें HTML फ़ाइलों में हार्डकोडिंग करना, यह इसे और भी मॉड्यूलर करता है। हैप्पी कोडिंग :)

+0

यह मेरे लिए काम किया! :-) बहुत बहुत धन्यवाद। – byJeevan