문제

Objective-C, WebView

안녕하세요, 저는 Domdocument에서 Dom Elenmnent의 내부를 변경하려고합니다.

domDocument *mydom = [[StoryDisplay mainframe] domDocument];
domlement *heading = [mydom getElementById :@"Heading"]; [제목 setNodevalue :@"hejsa"];

위의 줄이 실행될 때 변경되는 것은 없습니다. 이것이 InnerHTML 속성을 편집하는 올바른 방법입니까?

감사합니다, Mads Hartmann Jensen

도움이 되었습니까?

해결책

왜 -setinnerhtml : method를 사용하지 않습니까?

다른 팁

나는 이것을 달성하는 한 가지 방법이 JavaScript를 사용하여 DOM과 함께 놀는 것임을 알았습니다.

id *scriptObject= [storyDisplay windowScriptObject]; 
[scriptObject callWebScriptMethod:@"repleaceHeader" withArguments:[[NSArray alloc] initWithObjects:@"Whatever you want the header to be"]];

이 코드는 WebView에서 스크립팅 환경을 가져오고 'replaceheader'라는 이름과 인수 배열로 JavaScript 함수를 실행합니다 (내 경우에는 문자열 만).

이를 위해서는 해당 이름의 JavaScript 기능이 있어야합니다. 내 HTML 문서의 일부는 다음과 같습니다.

<h1 id="heading">Welcome to Cookie</h1>
<script type="text/javascript">
function repleaceHeader(header) { 
    var heading = document.getElementById("heading"); 
    heading.innerHTML = header; 
}       
</script>
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top