Javascript 铬刻度不正确地闪烁

Javascript 铬刻度不正确地闪烁,javascript,flash,google-chrome,params,Javascript,Flash,Google Chrome,Params,我使用下面的函数创建一个显示flash对象的代码。最初的flash大小是320x240,但我想显示为200x150,所以我使用了参数宽度为200,高度为150的函数。所有浏览器都能正常工作,但chrome不能。它显示为200x151(检查代码显示为200x151大小)。为什么? 函数getFlashCode(params) { 调试('getFlashCode'); var defaultParams={movie:'',flashvars:{},宽度:'',高度:'}; for(默认参数中的v

我使用下面的函数创建一个显示flash对象的代码。最初的flash大小是320x240,但我想显示为200x150,所以我使用了参数宽度为200,高度为150的函数。所有浏览器都能正常工作,但chrome不能。它显示为200x151(检查代码显示为200x151大小)。为什么?

函数getFlashCode(params) { 调试('getFlashCode'); var defaultParams={movie:'',flashvars:{},宽度:'',高度:'}; for(默认参数中的var键) { if(参数[键]==未定义) params[key]=defaultParams[key]; } var flashvars=''; for(参数flashvars中的变量键) flashvars+=encodeURIComponent(键)+'='+encodeURIComponent(params.flashvars[key])+'&'; var id=“fl”+Math.random(); var代码=”; 代码+=”; 代码+=”; 代码+=”; 代码+=”; 代码+=”; 代码+=”; 代码+=”; 代码+=”; 代码+=”; 代码+=”; 代码+=”; 代码+=”; 代码+=”; 代码+=”; 代码+=”; 代码+=”; 代码+=”; 代码+=”; 代码+=”; 代码+=”; 代码+=”; 代码+=”; 代码+=”; 代码+=”; 代码+=”; 代码+=”; 代码+=”; 代码+=”; 返回码; }
首先,这些代码很难读懂,你会遇到一些问题。正如Kos所说,我强烈建议您使用嵌入您的Flash文件,因为它可以处理所有浏览器的奇怪之处。此外,大多数参数都是不需要的,因为它们的默认值已经被指定了。这是我推荐的方法:

<script type="text/javascript" src="swfobject.js"></script>
<script type="text/javascript">
var flashvars = {};
var params = {};
var attributes = {};

swfobject.embedSWF("filename.swf", "div-id-here", "200", "150", "9.0.0","expressInstall.swf", flashvars, params, attributes);
</script>

var flashvars={};
var params={};
var属性={};
嵌入swf(“filename.swf”、“此处的div id”、“200”、“150”、“9.0.0”、“expressInstall.swf”、flashvars、params、attributes);
然后,只需添加div元素,该元素具有在javascript代码中指定和设置的id,就完成了。我还必须提到一个我马上就看到的问题:300/240的宽/高比是1.25,200/150的宽/高比是1.333,这意味着除非闪光灯是按比例制作的,并且根据大小改变周围的元素,否则你的flash电影会有边框来保持它本来的比例,除非你改变缩放模式(其中
showall
不是潜在选项之一)


我不知道flash是如何编程的,也不知道你到底想做什么,但我会让你自己去尝试和阅读。

顺便说一句,你最好使用SWFObject嵌入你的flash文件。它功能多样,并且很好地兼顾了浏览器兼容性。我现在已经注意到flash和Chrome越来越怪异Pepper Flash是Chrome的默认Flash插件。我想知道这是否是另一种情况?您可能已经为Chrome安装了多个Flash插件,您可以禁用Pepper Flash,然后通过以下方式尝试一个bug较少的插件:chrome://plugins
<script type="text/javascript" src="swfobject.js"></script>
<script type="text/javascript">
var flashvars = {};
var params = {};
var attributes = {};

swfobject.embedSWF("filename.swf", "div-id-here", "200", "150", "9.0.0","expressInstall.swf", flashvars, params, attributes);
</script>