0

これは古い問題ですが、検索して検索しましたが、この問題に対する適切な回避策はまだ見つかりません。

HTML ポップアップ (表示する必要がある HTML はサードパーティのサーバーから生成される) が必要なフレックス アプリがあるため、Flex iFrame を使用して表示しました。私の問題は、古いブラウザーのレイヤー化には wmode="opaque" が必要なことですが、これを行うと、Safari でテキストボックスがキーボード入力の受信を停止します。

この問題の有効な解決策を知っている人はいますか?

さまざまな解決策を見つけましたが、まだうまくいきませんでした:

  1. HTML 入力フォームを Flex 入力フォームとまったく同じ位置に配置します。残念ながら、これは大きすぎて何百ものテキストボックスがあるため、私が取り組んでいるアプリのオプションではありません。
  2. キーダウンでアプリに焦点を戻す、運がない-> http://www.igorcosta.org/?tag=flex-hacks
  3. 誰かが MXFTETextInput が機能する可能性があることを Stack で提案したので、これも試してみましたが、うまくいきませんでした。

あなたが与えることができるどんな助けにも感謝します!

4

1 に答える 1

0

この問題に関する私の調査に基づいて、私自身の質問に答えます。

アドビでは、Flex アプリケーション内に HTML を埋め込む方法をサポートしていません。Flex iFrame は、Flash Player で特別なウィンドウ モード (wmode opaque) を使用して、アプリケーションの上に配置された HTML を表示する一般的な方法ですが、サポートされていません。opaque wmode はレイヤー化と合成を考慮に入れていますが、この wmode の大きな問題は、さまざまなブラウザー間で Flash Player のパフォーマンスに一貫性がないことです。この wmode を使用すると、Firefox と Safari で発生する問題が多数文書化されています。

これは非常に有益で有益な投稿でした -- 実装に時間を費やしたい場合は、いくつかの理論的な解決策も提供しています --- http://www.deitte.com/archives/2008/07/dont_use_iframe.htm

于 2012-08-15T02:13:45.983 に答える