关于javascript轮播广告的浏览器兼容问题!

<SCRIPT LANGUAGE="JavaScript"><!-- var focus_width=700; var focus_height=400; var text_height=0; var swf_height = focus_height+text_height; <% sql="select top 6 * from list where zhonglei='推荐' and weizhi='轮播' order by id desc" set rs=server.createobject("adodb.recordset") rs.open sql,conn,1,1 do while not rs.eof flashpics=flashpics & "|" & rs("picindex") flashlinks=flashlinks & "|" & rs("picindex") flashtexts=flashtexts & "|" & rs("mingcheng") rs.movenext loop rs.close set rs=nothing %> var pics='<%if flashpics<>"" then response.Write(mid(flashpics,2))%>'; var links='<%if flashlinks<>"" then response.Write(mid(flashlinks,2))%>'; var texts='<%if flashtexts<>"" then response.Write(mid(flashtexts,2))%>'; var fv="pics="+pics+"&links="+links+"&texts="+texts+"&borderwidth="+focus_width+"&borderheight="+focus_height+"&textheight="+text_height; document.write('<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=5,0,0,0" width="'+focus_width+'" height="'+swf_height+'">'); document.write('<param name="movie" value="flash/flash_switch.swf"> <param name="quality" value="high"><param name="allowScriptAccess" value="sameDomain"><param name="menu" value="false"><param name="bgcolor" value="#ffffff"><param name="wmode" value="opaque">'); document.write('<param name="flashvars" value="'+fv+'"></object>');//--></SCRIPT>

这段JS的轮播代码可以在IE中正常显示,在火狐浏览器中就不行。为什么呢?

在document.wirite出的object标签中加上一个<embed>的标签试试~

即改成如下代码(注意黑色加粗部分):


<SCRIPT LANGUAGE="JavaScript">
<!-- 
var focus_width=700; 
var focus_height=400; 
var text_height=0; 
var swf_height = focus_height+text_height; 
<% 
sql="select top 6 * from list where zhonglei='推荐' and weizhi='轮播' order by id desc" set rs=server.createobject("adodb.recordset") 
rs.open sql,conn,1,1 
do while not rs.eof 
flashpics=flashpics & "|" & rs("picindex") 
flashlinks=flashlinks & "|" & rs("picindex") 
flashtexts=flashtexts & "|" & rs("mingcheng") 
rs.movenext 
loop 
rs.close 
set rs=nothing 
%> 
var pics='<%if flashpics<>"" then response.Write(mid(flashpics,2))%>'; 
var links='<%
if flashlinks<>"" then response.Write(mid(flashlinks,2)) 
%>'; 
var texts='<%
if flashtexts<>"" then response.Write(mid(flashtexts,2))
%>'; 
var fv="pics="+pics+"&links="+links+"&texts="+texts+"&borderwidth="+focus_width+"&borderheight="+focus_height+"&textheight="+text_height; 
document.write('<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=5,0,0,0" width="'+focus_width+'" height="'+swf_height+'">'); 
document.write('<param name="movie" value="flash/flash_switch.swf"> <param name="quality" value="high"><param name="allowScriptAccess" value="sameDomain"><param name="menu" value="false"><param name="bgcolor" value="#ffffff"><param name="wmode" value="opaque">'); 
document.write('<embed src="flash/flash_switch.swf" wmode="opaque" FlashVars="'+fv+'" menu="false" bgcolor="#dadada" quality="high" width="'+ focus_width +'" height="'+ swf_height +'" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer"');
document.write('<param name="flashvars" value="'+fv+'"></object>');//
-->
</script>

温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-01-06
你引入的播放flash的activex不兼容firefox的。。
网上有很多解决方法。下面知道里有人回了:
第2个回答  2014-01-10
我看你用的是flash轮播啊,flash存在兼容性吧!

有什么问题继续交流!

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网