jQuery/Safari用flash显示/隐藏问题



Im在加载表单时使用show/hide加载"加载"flash文件。

我试图显示的div包含一个swf文件

这在除safari之外的所有浏览器中都可以正常工作,safari在单击提交按钮时不会显示swf文件

我在这里设置了一个测试。。。https://www.paydaygap.co.uk/test.php

我正在使用。。。

$('#form').show();
$('#loading').hide();
$('.sendform').click(function(){
    $('#form').hide();
    $('#loading').show();
});

点击.sendform时应该显示的隐藏div是…

<div id="loading" style="padding:50px; text-align:center;">
<h1>This thing is loading</h1>
<p>
  <object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=9,0,28,0" width="300" height="300" >
    <param name="movie" value="lightboxform/loading.swf" />
    <param name="quality" value="high" />
    <param name="wmode" value="transparent" />
    <embed src="lightboxform/loading.swf" width="300" height="300" quality="high" pluginspage="http://www.adobe.com/shockwave/download/download.cgi?P1_Prod_Version=ShockwaveFlash" type="application/x-shockwave-flash" wmode="transparent"></embed>
  </object>
</p>

非常感谢您的帮助

当容器被隐藏时,我认为其他浏览器无法呈现flash。试试这个:

首先,与其不显示加载div,不如将其位置设置为绝对,并将其从页面中移出:

#loading { display:block;position:absolute;left:-9999px;}

然后试试这个:

$('.sendform').click(function(){
    $('#form').hide();
    $('#loading').css({
        'position' : 'relative',
        'left'     : '0px'
    });
});

乍一看,我想知道为什么使用旧的skool嵌入flash,而不是用javascript插入它?

尝试使用swfobject或flashembed插入闪光灯(http://flowplayer.org/tools/toolbox/flashembed.html)使用:

flashembed(this, "lightboxform/loading.swf");

最新更新