===톱페이지===
이제 캘린더 애플리케이션 예제에 초점을 맞춥니다. 애플리케이션에는 4개의 서로 다른 페이지가 포함되어 있습니다. canlendar.html은 Calendar.htc가 포함된 최상위 HTML 문서입니다.
HTC와 canlendar.htc에는 두 개의 다른 HTC인 day.htc와 today.htc, Calendar.html이 포함되어 있습니다.
내용은 다음과 같습니다.
HTML xmlNS:MYCAL> <HEAD> <TITLE>Calendar Example</TITLE> <?IMPORT NAMESPACE="MYCAL" IMPLEMENTATION="calendar.htc"/> </HEAD> <BODY> <P>Click a day in the calendar to add or modify your schedule.</P> <MYCAL:CALENDAR></MYCAL:CALENDAR> </BODY> </HTML>
몇 가지 사항을 확인해야 합니다. 중요 사항: 먼저, 호출하려는 HTC에 정의된 네임스페이스를 사용해야 합니다. MYCAL이므로 XMLNS 식별자가 에 나타나야 합니다.
태그는 다른 일반 태그와 구별하기 위해 물음표로 시작합니다. 이 태그를 사용하려면 브라우저가 지정된 HTC를 가져와야 합니다. HTC는 여러 네임스페이스를 가질 수 있으므로 시기를 지정해야 합니다. 사용된 네임스페이스 가져오기(MYCAL):
HTC의 주요 장점 중 하나는 모든 입력 파일을 가져올 때까지 브라우저가 페이지 구문 분석을 일시 중단한다는 것입니다. 페이지 처리의 비동기 메커니즘은 많은 문제를 야기합니다. 브라우저는 페이지 구문 분석을 시작하기 전에 요소가 완전히 표시될 때까지 기다리지 않습니다. 어떤 이유로든 객체가 준비되어 있으면 객체가 존재하지 않거나 객체가 액세스하려는 메서드를 지원하지 않는다는 오류가 발생합니다. 그럼에도 불구하고, ?IMPORT
이는 동기식이며 브라우저는 페이지를 가져오고 콘텐츠가 준비될 때까지 기다립니다.
페이지에서 유일하고 중요한 줄은 사용자 정의 태그 MYCAL:CALENDAR를 호출하는 것입니다.
페이지를 이미 가져왔으므로 이 호출은 Calendar.htc에 지정된 캘린더를 생성합니다. <… is canlendar.htc의 상위 15개 라인:
<HTML XMLNS:MYCAL XMLNS:TODAY XMLNS:ANYDAY> <HEAD> <?IMPORT NAMESPACE="ANYDAY" IMPLEMENTATION="day.htc"/> <?IMPORT NAMESPACE="TODAY" IMPLEMENTATION="today.htc"/> <PUBLIC:COMPONENT tagName="CALENDAR"> <ATTACH EVENT="oncontentready" ONEVENT="fnInit()"/> </PUBLIC:COMPONENT> <SCRipT LANGUAGE="javaScript"> <!-- function fnInit() { defaults.viewLink = document; } // --> </SCRIPT>
<?IMPORT NAMESPACE="ANYDAY" IMPLEMENTATION="day.htc"/> <?IMPORT NAMESPACE="TODAY" IMPLEMENTATION="today.htc"/>
그런 다음 CALENDAR 사용자 정의 태그를 정의합니다.
<PUBLIC:COMPONENT tagName="CALENDAR"> <ATTACH EVENT="oncontentready" ONEVENT="fnInit()"/> </PUBLIC:COMPONENT>
<SCRIPT LANGUAGE="JavaScript"> <!-- function fnInit() { defaults.viewLink = document; } // --> </SCRIPT>
<STYLE> TD { background-color:tan; width:50; height:50; } </STYLE>
ANYDAY:DAY에 대한 동일한 호출도 단순히 해당 월의 날짜를 전달합니다.
위 내용은 HTML, 컴포넌트, COMPONENTS 내용입니다. 더 많은 관련 글은 PHP 중국어 홈페이지(m.sbmmt.com)를 참고해주세요!