2

HTMLページにFlashベースのSWFUploadアップロードボタンがあります。

そのボタンのスタイルを設定しようとしています。SWFUploadは、Flashボタンの設定へのJavascriptセットアップインターフェイスを提供します。私は自分でFlashを持っていないので、コンパイル済みのSWFファイルを使用する必要があります。

   ..... 
   button_width: "100",
   button_height: "20",
   button_placeholder_id: "spanButtonPlaceHolder",
   button_text: '<span class="theFont">Upload</span>',
   button_text_style: ".theFont { font-size: 18; font-family: Verdana; color: #FFFFFF; }",
   button_text_left_padding
   .... 

ここで、ボタンが存在するHTML要素の背景色に合わせてボタンを配置します。これを透明にするか、フラッシュボタンに色を付けるかは関係ありません。しかし、SWFUpload 2.20には背景色を指定する設定がなくなったため、指定した色の背景画像を使用したくありません。

私は試した

   button_window_mode : SWFUpload.WINDOW_MODE.TRANSPARENT,

これにより透明なボタンが表示されますが、クリックイベントには反応しなくなります。テキストの小さな白いピクセルをクリックしても。

私はそれに透明な背景画像を与えてみました:

    button_image_url : "$swfupload_widget_webroot/images/transparent.png", // 1x1 Pixel 
    button_image_width: 100, 
    button_image_height: 20,

しかし、役に立たない。

誰かが何をすべきか考えていますか?

に設定すると、ムービーハンドルのクリックが表示されなくなるのはなぜtransparentですか?

Windows7のFirefox3.5でテストしています。

4

2 に答える 2

2

透明や不透明などのウィンドウ モードは、奇妙な入力バグを引き起こすことで有名です。できる限り遠ざけることは間違いなく良い考えです。

私は SWFUpload を使用したことがないので、SWF ファイルの埋め込みがどのように行われるのか完全にはわかりません。しかし、詳細に関係なく、最終的には埋め込み/オブジェクトタグを使用していると確信しており、それらには、SWF ファイル内で指定された背景色をオーバーライドするbgcolorパラメータがあります。このパラメーターを確認することをお勧めします (下にスクロール)

SWFObject は、javascript を使用して SWF ファイルを動的に埋め込む一般的な方法です。それが SWFUpload が使用するものである場合、次の原則を適用して bgcolor パラメータを設定できるはずです。

var params = {
  bgcolor: #ffcc00,
};

swfobject.embedSWF("myContent.swf", "myContent", "300", "120", "9.0.0",
  "expressInstall.swf", {}, params, {});

前述したように、SWFUpload インターフェイスがどのようなものかはわかりませんが、重要なのは埋め込みパラメーターを指定する方法を見つけることです。うまくいけば、少なくとも正しい方向にあなたを微調整するでしょう!

于 2010-01-01T18:08:05.727 に答える
2

mode=transparent または mode=opaque を使用すると、フラッシュはクリックではなくマウスを見ていることに気付きました。そのため、フラッシュファイルでボタンアクションを変更しました

オン (リリース) {

オン (ロールオーバー) {

そして、あなたは知らないでしょう、それはうまくいきます。人々はとにかくそれをクリックし、もう一度「クリック」するにはマウスをボタンから離さなければならないので、少し風変わりです。しかし、クライアントがそこにフラッシュ バナーを望んでいるために、ホームページ メニュー全体を再設計しなければならないよりはましです。当然、フラッシュ ファイル自体を編集する機能がない場合、残念ながらこれは役に立ちません。

于 2011-10-30T01:24:44.627 に答える