修改 uploadify 以正确显示中文buttonText

uploadify 目前不能正确显示中文的按钮文本。

我发现bug的原因是uploadify错误的使用了 js 的 escape 和 flash 的 unescape配对,而这2个是不兼容的。正确的转码传递参数应该用 encodeURI/decodeURI 配对,这2个函数的行为在js和flash里是相同的。其他地方的escape/unescape也应该替换掉,下面只修改影响按钮文本的部分。

1. jquery.uploadify.v2.0.3.js 66行
< if (settings.buttonText) data.buttonText = escape(settings.buttonText);
> if (settings.buttonText) data.buttonText = encodeURI(settings.buttonText);

2. uploadify.fla scene 1 脚本文件117行
< browseBtn.empty.buttonText.text = unescape(param.buttonText);
> browseBtn.empty.buttonText.text = decodeURI(param.buttonText);

3. uploadify.fla Scene 1\ empty\ buttonText 的UI属性
必须使用设备字体(比如 _sans)而不是嵌入字体。

然后用修改过的fla重新生成 swf 文件。

你可能感兴趣的:(jquery,UI,脚本,Flash)