1

これは本当に大変なことです。

この JavaScript を作成して、JavaScript のアクションと Flash アプリケーションのアクションを自分のサイトに接続しました。Flash アプリは、reltime インデックスを表示するバーです。しかし、それは4行あります。ユーザーは、上矢印または下矢印を押して、表示する行を選択できます。xとyを認識して、ユーザーがこれらのボタンのいずれかをクリックしたかどうかを認識しようとしています

e.pageX and e.pageY

これは機能するはずです(そして機能します!)フラッシュは常に下(固定位置)にあるためです。問題は、FFでは機能しますが、chromeやIEでは機能しないということです。

コードは

$('body').click(function(e){

    var arrowWidth  = 15;
    var arrowHeight = 12;

    x_left      = $("body").width() * 0.88 - 30;
    x_right     = $("body").width() * 0.88;

    y_down_bottom       = $(window).height() -2//screen.height; //$
    y_down_top      = y_down_bottom - arrowHeight;
    y_up_bottom     = y_down_bottom - arrowHeight-2;
    y_up_top        = y_up_bottom   - arrowHeight-4;


    if (e.pageX > x_left && e.pageX < x_right ){
        if (e.pageY>=y_down_top && e.pageY<=y_down_bottom ){
                    //pressed down
                      .............
                   }
        }

編集:

4

1 に答える 1

2

carnio のおかげで、フラッシュ外部インターフェイスを介して送信することでアプローチを変更しました。使った

import flash.external.*; // for sending up and down arrows events to javascript

そして、これはプレスの上下イベントで

//update javascript
// The name of a JavaScript function to call 
var callJasFunction:String = "GetBtnTicker";
//parameter 
var msg:int = page;
//  The return value after calling JavaScript 
ExternalInterface.call(callJasFunction, msg);

そしてそれは動作します。

于 2012-06-21T06:47:33.177 に答える