

鉴于Netscape浏览器不支持创建MSXML对象,我们可以在IIS服务器端转换后的返回 HTML[6]。本文介绍的网页菜单就能在Netscape浏览器中显示和运行。
六、 结论
用XML来表达菜单结构非常方便并且易于理解,当通过本文介绍的XSLT把菜单XML转换为网页菜单引擎的调用接口后,为网页制作菜单就十分容易了,只需要用普通的文本编辑器编辑XML文件。本文使用了 HV Menu引擎,如果使用其他的引擎,还可以编制一个类似XSLT来配合调用引擎的接口。最后,XML和XSLT是平台无关的标准,我们还可以在apache服务器[7]中和JSP服务器[8]中使用本文的方法。
【学习心得】
本文是学习XML及XSL技术的一个很好的实例。不过使用XML和XSL制作网页菜单仅仅是它们的一个很小的应用方面,XML和XSL的使用还有更多更加广泛的应用值得我们去学习和探讨。
本文中所制作的菜单效果虽然已经很出色,但是还是具有一定的缺点。例如菜单的位置控制、样式的扩充性,当子菜单过长时(超过浏览器纵向显示的长度)无法正确显示不可见的子菜单项等等。不过本文所使用的JS脚本给我们留出了很多扩展功能的接口函数。在长达25KB、600行的JS文件中,我们可以对菜单效果做进一步的改动。
另外,微软的网站以及MSDN的网站的导航条也运用了XML和XSL技术,我写的《仿XP风格的导航条制作教程》一文当中就是基于微软网站的导航条而写的,感兴趣的朋友可以参考一下。