У меня есть такая система: когда открывается главный сайт, появляется галерея изображений Flash, когда пользователь нажимает на изображение, используя функцию Flash "ExternalInterface.call", я вызываю функцию javascript, которая открывает модальное диалоговое окно java с именем nyromodal (который извлекает необработанные данные HTML через ajax с другой страницы в диалоговом окне) во флэш-фильме. И вот, когда возникает проблема:
В Google Chrome он работает должным образом, однако проблемы возникают с другими браузерами:
В 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>