2009-04-27 4 views
11

콘텐츠를 표시하는 데 UIWebView를 사용하고 콘텐츠를 조작하는 jQuery를 사용하려고하지만 jQuery를로드 할 수 없습니다. 여기에 내가있는 UIWebView를 설정 한 코드 (현지 번들의 HTML 파일)의 내용을 base을 설정,로드의 :jQuery가 iPhone에로드되지 않습니다.

UIWebView *view = [[UIWebView alloc] initWithFrame:[[UIScreen mainScreen] applicationFrame]]; 

NSString *path = [[NSBundle mainBundle] bundlePath]; 
NSURL *baseURL = [NSURL fileURLWithPath:path]; 

NSData *htmlData = [[NSData alloc] initWithContentsOfURL: [NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"index" ofType:@"html"]]]; 
NSString *htmlString = [[NSString alloc] initWithData:htmlData encoding:NSUTF8StringEncoding]; 
[view loadHTMLString:htmlString baseURL:baseURL]; 

컨텐츠로드 잘, 나는 그를 확인했습니다 baseURL은 이미지를 번들에 추가하고 HTML에서 참조하여 올바르게 작동합니다. 내 Macbook의 Safari에서 동일한 HTML을 사용하면 jQuery가 제대로로드되어 예상대로 작동합니다.

저는 압축 jquery-1.3.2.min.js와 개발 jquery-1.3.2.js를 모두 사용해 보았습니다.

아이디어가 있으십니까?

답변

22

가! EBCAK!

jquery 자바 스크립트 소스를 프로젝트에 복사 할 때 커서가 대상의 "컴파일 소스"에 복사되어 오류가 발생했습니다. 나는 "Compile Sources"에서 그것을 삭제했지만 "Copy Bundle Resources"에 다시 추가하지 않았습니다.

/이마가 반복해서 이마에 걸립니다.

+0

나는 이것이 무엇을 의미하는지 알아야합니다. 페이지 데이터를 조작하기 위해 jQuery API를 프로젝트에로드하는 방법은 무엇입니까? – Justin

+5

기본적으로 jQuery의 .js 파일을 XCode에 포함 시키면 대상의 컴파일 된 폴더에 넣습니다. 잘못된 것입니다. Xcode에서 대상으로 이동하고 JQuery 파일을 "Compile Sources"에서 "Bundle Resources 복사"로 드래그하면 정상적으로로드됩니다. –

+0

@DonJones 복사 번들 원본에 jquery js를 추가하지 않고도 작업을 수행 할 수있는 방법이 있나요? 응용 프로그램 디렉토리를 다운로드하고 응용 프로그램에서 액세스 할 때 UIWebview에 HTML을로드하기 때문입니다. –

1

.html 및 .js 파일을 모두 응용 프로그램의 문서 폴더로 복사하고 UIWebView를 해당 로컬 폴더로 지정 했습니까?

관련 문제