我有数百个html文件,它们是培训课程中的课程,它们通常被视为课程的一部分。我现在被要求允许用户能够自己查看课程,因此我想在一个常见的lessonWrapper.html文件中打开它们,该文件显示了各个课程内容的html文件,让我们称之为课程.html,在lessonWrapper.html的iFrame中。通过这种方式,我可以将内容集中在一起,并在iFrame上方或下方添加任何导航元素,而不是触及lesson.html。
为了清楚起见,用户浏览html页面中托管的Flex(swf)文件中的课程列表,我们称之为browse.html。用户单击按钮,将调用以下ActionScript:
if (ExternalInterface.available) {
// Call the 'loadLesson' Javascript function.
ExternalInterface.call("loadLesson", "004.html");
}
这将调用JavaScript函数'loadLesson',它位于browse.html中,并传递参数'004.html',这是我们要在lessonWrapper.html的iFrame中显示的课程的名称。
我在browse.html中的JavaScript函数是这样的:
<script type="text/javascript">
function loadLesson(_path) {
//alert("loadLesson called successfully.");
var myWindow = window.open ("tdc/Lobjs/dev/lessonWrapper.html","window");
var iframe = document.getElementsByTagName('iframe')[0];
alert("iFrame name: " + iframe.name);
myWindow.frames[0].src = "JavaScript:'004.html'";
myWindow.frames['lessonIframe'].onload = function() {
alert('Window loaded')
}
//alert("iFrame.name: " + myWindow.frames[0].name);
//document.getElementById('lessonIframe').src = _path;
}
</script>
正如你所看到的,我一直在尝试各种各样的行,并注释了我之前尝试的一些行。我想简单地打开lessonWrapper.html并在名为'lessonIframe'的iFrame中显示我作为参数'_path'传递的课程004.html。
也许我会以完全错误的方式解决这个问题。我欢迎你的想法和圣人的建议。
此致
克里斯