상세 컨텐츠

본문 제목

tip] 실버라이트2 와 모스 연동

MOSS

by happynuri 2009. 2. 25. 20:57

본문


내가 쓰는 실버라이트와 모스 연동 방법은 아주 간단하다.

실버라이트에서 뿌려주는 view 부분의 html을 리터럴로 받아서 웹파트를 작성하고 뿌려주는 것이다. 

이럴때, 간혹 싱크가 안 맞아서 웹서비스 등을 사용해야 하는 문제가 발생하기는 하지만 대략은 그러하다.

그럴때, hrml 부분을 확인하면,

실버라이트 개발자는 body 부분에 자바스크립트로 된 메소드를 onload 시에 부르기도 한다.

그러할때 웹파트 를 삽입할 마스터 페이지 자체는 이미 html 의 head 나 body 부분이 구현되어 있기 때문에

<body onload="hamsu()"> 이렇게 했다가는 처리 되지 않는다.

이럴때는 body에 onload 하여 사용하지 않아야 한다.




아래 처럼 body에서 onload 할 함수가 있다면 스크립트 안에 _spBodyOnLoadFunctionNames를 사용하여서

강제로 로드 될수 있도록 해주어야 한다.



<script type='text/javascript'>

 _spBodyOnLoadFunctionNames.push('aaa');   

funtion aaa()
{
   alert('하하');
}
</script>


이거 몰라서 삽질 꽤나 했다.

만약

<script type='text/javascript' src='" + path + @"lib/basic_mapscript.js' ></script>
이런식으로 자바스크립트를 링크만 했을 경우에도 

<script type='text/javascript'>

 _spBodyOnLoadFunctionNames.push('호출할 함수명');   
//debugger; //디버깅시..
</script>

이렇게 하면된다.




질문사항 있으시면 질문 환영 합니다. 

퍼가실땐 덧글 필수!!

관련글 더보기

댓글 영역