您的位置:首页 > 运维架构

解决 Flash 透明模式下Firefox、Opera等浏览器无法输入中文的问题

2008-12-20 11:44 926 查看
解决 Flash 透明模式下Firefox、Opera等浏览器无法输入中文的问题

在Firefox、Opera、Chrome等浏览器中,当 Flash
以透明模式执行时 (wmode="transparent")

出现无法输入中文文字和其它需要选字的输入法文字时会有问题。

解决方法一:利用 ExternalInerface
与 JavaScript window.prompt
来解决

import flash.external.*;
// 將 js function 宣告出去,(也可以直接写在Html网页<script>中)
ExternalInterface.call("eval",
    "function getInput(hint){return window.prompt(hint, '');}");
// 利用 ExternalInterface 呼叫 JS function,並取得 User 輸入文字
function doInput() {
inputTxt.text = ExternalInterface.call("getInput", "請輸入文字");
}


该方法已经过测试可行,但缺点是以弹出对话框形式出现,用户体验不够好。

解决方法二:

使用thickbox(
http://jquery.com/demo/thickbox/)这个opensource的JS工具,可以单纯传参数这个工具就会帮忙建立iframe,可以兼容IE和FF。

注:该方法未经过测试。

目前该问题还未有更好的解决方案,如无特殊需求需要设置flash为透明,一般情况下不建议设置为透明。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: