なぜ、wmodeが透明な場合(つまり/ ff/chromeに問題はない)、テキストフィールドがSafariでイベントを正しくキャッチしないのですか?私が見つけた唯一の回避策は、外部インターフェイス(たとえば、フラッシュ上にHTMLフォームをオーバーレイする)を介してFlashにhtmlフォームフィールドイベントを送信することです。この問題に対する優雅な解決法/回避策はありますか?Flash/TextField/Safari - wmodeが透明に設定されているとテキストフィールドに入力できません
編集:Swfobjectが、これは長い時間のための既知の問題です...
<script>
var swfVersionStr = "10.2.0";
var xiSwfUrlStr = "playerProductInstall.swf";
var flashvars = {};
flashvars.swfsPath = "http://domain.com/swfs/";
flashvars.initial_section = "0";
var params = {};
params.quality = "high";
params.bgcolor = "#cfc7c0";
params.allowscriptaccess = "always";
params.allowfullscreen = "true";
params.wmode = (navigator.userAgent.toLowerCase().indexOf('chrome') > -1) ? "transparent" : "opaque";
var attributes = {};
attributes.id = "Loader";
attributes.name = "Loader";
attributes.align = "middle";
swfobject.embedSWF(
flashvars.swfsPath + "Loader.swf", "Loader",
"100%", "100%",
swfVersionStr, xiSwfUrlStr,
flashvars, params, attributes);
swffit.fit("Loader", 980, 726);
</script>
あなたはすでにフラッシュムービーにフォームをオーバーレイすることで何らかのハックをしているように私に聞こえます。 vmodeは通常あなたに問題を与えます。あなたは正確に何をしようとしているのかもっと重視できますか? –
@The_asMan私たちは簡単なフォームを作成しようとしていますが、テキストフィールドは少数ですが、Safariで入力することはできません(要素はフォーカスを取得しますが、キーストロークは無視されます)。 Atm回避策はありません。 –
要素を言うとき、正確に何を参照していますか? HTMLテキストフィールド?フラッシュテキストフィールド?あなたのコードを簡素化して投稿してください。 –