感谢您查看此问题。
我们开发了一个网站,其中包含用Flash编写的导航控件(Next和Previous按钮)。这些按钮使用ExternalInterface在我的网页中调用Javascript函数,例如ExternalInterface.call(“showPage”,pageNum);
我的HTML页面包含多个Div,每个Div代表一个“屏幕”。第一个Div(屏幕)将CSS Display设置为'inline',其余所有设置为'none'。
单击Flash按钮时调用的Javascript showPage函数如下所示,它调用hideShow函数:
function showPage(which) {
if (pagetype == "lo"){
if(which < 0 && isRunningInFrame()){goPrev();}
else if (which > maxPageNum && isRunningInFrame()){goNext();}
else{dsPages.setCurrentRow(which);}
}
hideShow('page' + currentRow, 'page' + which);
prevRow = currentRow;
currentRow = which;
}
function hideShow(hideDiv, showDiv){
if(document.getElementById(hideDiv)!=null){
document.getElementById(hideDiv).className = "hideDiv clear";
}
if(document.getElementById(showDiv)!=null){
document.getElementById(showDiv).className = "showDiv clear";
}
}
这一切在当代浏览器中运行良好,反应灵敏。但是我们的客户在他们所有的PC上都安装了Internet Explorer 6(他们不会这样!)当你点击Next时,整个页面会重新加载。我只是假设发生了这种情况,因为我可以在浏览器的左下角(灰色条中)看到所有JPEG图像加载。一些HTML页面包含大约50个“屏幕”,当它们一次又一次地加载时,这非常慢。
如果有人能够理解为什么会这样,或者可以提出更有效的方法,我将非常感激。
谢谢。
此致
克里斯
答案 0 :(得分:0)
Pointy可能在这里有一点(没有双关语意)。一个简单的猜测建议是尝试放置'return false;'在你的js-call之后。