当前位置:首页>>JavaScript教程>>JavaScript基础教程>>HTML组件之:最顶级页面(3)
HTML组件之:最顶级页面(3)
2009/11/8 13:19:18
然后我们定义CALENDAR自定义标记:

<PUBLIC:COMPONENT tagName="CALENDAR">

<ATTACH EVENT="oncontentready" ONEVENT="fnInit()"/>
</PUBLIC:COMPONENT>

  PUBLIC:COMPONENT用来描述CALENDAR标记,在开始和结束标记之间,您可以将事件附加到CALENDAR标记上,事件oncontentready将在calendar.htc文件全部被导入,并被解析时,指定处理时间的是定义在javascript的函数:fnInit():

<SCRIPT LANGUAGE="javascript">
<!--
function fnInit()
{
defaults.viewLink = document;
}
// -->
</SCRIPT>

  viewLink指定的值非常重要,它是HTML组件的基础,它连接了HTML组件和调用该HTML组件的页面,defaults对象有别的属性并且会在别的地方被覆盖,我们给viewLink属性赋的是HTML文档对象,正因为该连接,我们才可以建立HTC组件和包含页面互访。
  我们将在后面解释日历的层。注意,尽管在日历中当月的当天框和其他天框、空框的样式不一样,但是我们通过优先级法则来实现在包含页中,HTML组件忽略任何相互冲突的样式定义。calendar.htc的样式定义如下:

<STYLE>
TD {
background-color:tan;
width:50;
height:50;
}
</STYLE>

  现在将该定义和日历比较,只有空框是的颜色是黄褐色的,我们调用的HTC忽略了这些定义,被调用的页面都嵌入了页面定制。以下调用TODAY:DAY HTML组件:

<TODAY:DAY value=' + dayOfMonth + '></TODAY:DAY>

  我们只是简单的传入了当月中的第几天,同样的调用ANYDAY:DAY 也是简单的传入当月中的第几天:

<ANYDAY:DAY value=' + dayOfMonth + '></ANYDAY:DAY>

[1]