我有一个这样的系统:当mainsite打开时,出现一个flash图库,当用户点击图像时,使用Flash的“ExternalInterface.call”函数,我调用一个javascript函数打开一个名为nyromodal的java对话模式(其中在flash电影上通过ajax从对话框内的另一个页面获取原始HTML数据.这就是问题发生的时候:
在谷歌浏览器中,它可以正常运行,但其他浏览器会出现问题:
>使用Internet Explorer,对话框打开但是当我单击“关闭”按钮时对话框停留在那里,奇怪的是如果我最小化IE按钮并最大化它,对话框会消失.
>使用Firefox,在打开触发的对话框时,对话框窗口只显示一些损坏的图形,但如果我移动鼠标,它会显示内容.
什么可能导致这个问题?我该如何解决?
<!DOCTYPE html PUBLIC
"-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<Meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link type="text/css" href="/media/style.css" rel="stylesheet" />
<link rel="stylesheet" href="/media/nyroModal.full.css" type="text/css" media="screen" /> <script type="text/javascript" src="/media/jquery.js"></script>
<script language="javascript">AC_FL_runcontent = 0;</script>
<script type="text/javascript" src="/media/AC_RunActiveContent.js"></script>
<script type="text/javascript" src="/media/jquery.nyroModal-1.5.2.pack.js"></script>
<script type="text/javascript">
function showItem(i,x){
var myurl = "/item/?i="+i;
$.nyroModalManual({url:myurl,title:x});
}
</script>
</head>
<body bgcolor="#000000">
<!--url's used in the movie-->
<!--text used in the movie-->
<!-- saved from url=(0013)about:internet -->
<div STYLE="z-index: 1;"><center>
<script language="javascript">
if (AC_FL_runcontent == 0) {
alert("This page requires AC_RunActiveContent.js.");
} else {
AC_FL_runcontent(
'codebase', 'http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0',
'width', '100%',
'height', '600',
'src', '/media/preview',
'quality', 'high',
'pluginspage', 'http://www.macromedia.com/go/getflashplayer',
'align', 'middle',
'play', 'true',
'loop', 'true',
'scale', 'noScale',
'wmode', 'transparent',
'devicefont', 'false',
'id', 'preview',
'bgcolor', '#2e2e2e',
'name', 'preview',
'menu', 'true',
'allowFullScreen', 'false',
'allowScriptAccess','sameDomain',
'movie', '/media/preview',
'salign', ''
); //end AC code
}
</script>
<noscript>
<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0" width="1024" height="850" id="preview" align="middle">
<param name="allowScriptAccess" value="sameDomain" />
<param name="allowFullScreen" value="false" />
<param name="movie" value="/media/preview.swf" /><param name="quality" value="high" /><param name="bgcolor" value="#000000" /> <embed src="/media//media/preview.swf" quality="high" bgcolor="#000000" width="100%" height="850" name="preview" align="middle" allowScriptAccess="sameDomain" allowFullScreen="false" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />
</object>
</noscript>
</center>
</div>
</body>
</html>
解决方法:
透明不适用于此.要通过Flash显示HTML,您需要使用wmode =“opaque”显示您的电影.
此外,将电影的CSS zIndex属性设置为0,弹出窗口的1000(或任何高于0的值)将在某些浏览器中提供帮助.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。