2012-06-28 2 views
9

동일한 디렉토리에서 외부 CSS 파일과 javascript 파일을 참조하는 HTML 문자열을로드하는 iOS 앱이 있습니다.UIWebView의 iOS loadHtmlString이 자바 스크립트에서 작동하지 않습니다.

<html> 
<head> 
    <meta name="viewport" content= user-scalable="no", width="device-width" /> 
    <meta http-equiv="Content-Type" content="text/html"; charset="UTF-8"/> 
    <link rel="stylesheet" type="text/css" href="mystyle.css" /> 
    <script type="text/javascript" src="myjavascript.js"></script> 
</head> 

CSS 파일이 잘 작동하지만이 JS 파일이로드되지 않을 것 같다

여기 내 html 파일입니다. 그 이유는 무엇일까요?

그런데 loadHtmlString : BaseUrl 메서드를 사용하여 HTML 문자열을로드합니다.

감사

+1

[이] (http://stackoverflow.com/questions/7012537/sourcing-local-javascript-in-uiwebview-ios?rq=1) 링크를 참조하고 내가 그걸 시도하지 않았으므로 도움이되기를 바랍니다. –

+0

iOS 코드를 표시 할 수 있습니까? – nhahtdh

+3

자바 스크립트가 * 번들 리소스 * 섹션에 있고 * 소스 컴파일 섹션에 없는지 확인하십시오. 왜 그런지 모르지만 때로는 Xcode가 자바 스크립트를 컴파일해야한다고 생각합니다. 물론, 그렇게 할 수는 없으므로 많은 HTML 코드와 리소스가 필요하지 않습니다. – borrrden

답변

6

이 질문은 조금 오래된,하지만이 대답되지 않았기 때문에, 나는 당신이 자바 스크립트 파일이 번들에 거주하는로드 웹보기를 좋아하면 지적하고 싶습니다 방법 할일 :

baseURL을 지정하지 않으면 javascript 파일이로드되지 않습니다. 다른 추천

+0

이것은 정확히 내가 한 일입니다. 문제는 CSS는 괜찮지 만 여전히 자바 스크립트가로드되지 않습니다. –

+0

나는 당신의 자바 스크립트가 약간의 오류를 포함하고 있지 않은 것이 확실한가요? JS 문제는 자동으로 실패한다는 것입니다. 매우 원시 디버깅으로, 당신은 그것에 (예를 들어, js 파일의 첫 번째 줄), 몇 가지 경고문을 넣을 수 있는지 그들이 팝업 경우 참조하십시오 ... – sergio

+0

예, 나는 JS의 한 줄만 추가하여 테스트했습니다 경고 할 코드.하지만 작동하지 않습니다. CSS가 작동합니다. 어쨌든 고마워. –

2

은 상기 한
  • 사용 base을 [NSURL fileURLWithPath [[NSBundle mainBundle] bundlePath]];

  • 복사 번들 리소스 및 아니요,은 컴파일 리소스에 있습니다.

thats it!

5

기본적으로 xcode는 새로운 Javascript 파일을 번들 리소스 대신 컴파일 리소스에 넣습니다. 프로젝트를 클릭 한 다음 대상을 클릭하십시오. 'Build Phases'아래에서 'Compile Sources'아래에서 Javascript 파일을 볼 수 있습니다. 'Bundle Resources 복사'로 드래그하십시오.

+1

이것은 내 프로젝트에 몇 개의 JS 파일을 드래그했을 때 일어난 일입니다. Xcode에서 오류가 발생했기 때문에 ** Compile Resources **에서 제거되었지만 ** 번들 리소스 **가 없어도 응용 프로그램에서 사용할 수 없었습니다. 감사! –

+0

이것은 내 생명을 구했어! @ Kevin Borders에게 감사합니다! – gilsaints88

관련 문제