• 用 javascript + actionScript 解决透明的flash在firefox下滚轮失效的问题!(转)


    在透明的flash在firefox下滚轮功能会失效,只有firefox有此问题,其他浏览器没有碰到过,这是因为firefox没有把鼠标的滚轮事件传给flash的原因。我们可以这样来解决:

    1、在flash的宿主文件(HTML)下增加如下代码:

    <mce:script language="JavaScript" type="text/javascript"><!--
    if(!(document.attachEvent)) {
    window.addEventListener("DOMMouseScroll", handleWheel, false);
    }
    function handleWheel(event) {
    var app = window.document["${application}"];
    if (app) {
    var o = {x: event.screenX, y: event.screenY,
    delta: event.detail,
    ctrlKey: event.ctrlKey, altKey: event.altKey,
    shiftKey: event.shiftKey}

    app.handleWheel(o);
    }
    }
    // --></mce:script>

    注,${application}为FLEX站点工程下XXX.template的参数,如为其他文件,请改为flash对象的ID值。

    2、在flash程序初始化完后,执行此代码:

    ExternalInterface.addCallback("handleWheel", handleWheel); 

    注:可以把这行代码加入初始化完成的事件回调函数中执行,此函数注册来自javascript函数"handleWheel"的事件,回调函数是handleWheel,此函数代码如下:

    3、在上面这句代码的函数外,加入此函数:

    public function handleWheel(event:Object): void {
    var obj:InteractiveObject = null;
    var tmpGlbPoint:Point = new Point(this.mouseX, this.mouseY);
    var objects:Array = this.getObjectsUnderPoint(tmpGlbPoint);
    for (var i:int = objects.length - 1; i >= 0; i--) {
    if (objects[i] is InteractiveObject) {
    obj = objects[i] as InteractiveObject;
    break;
    } else {
    if (objects[i] is Shape && (objects[i] as Shape).parent) {
    obj = (objects[i] as Shape).parent;
    break;
    }
    }
    }
    if (obj) {
    var tmpP:Point = obj.globalToLocal(tmpGlbPoint);
    var mEvent:MouseEvent = new MouseEvent(MouseEvent.MOUSE_WHEEL, true, false,
    tmpP.x, tmpP.y, obj,
    event.ctrlKey, event.altKey, event.shiftKey,
    false, -Number(event.delta));
    obj.dispatchEvent(mEvent);
    }
    }

    OK了,编译完,用firefox打开看看!!可以了吧!!

  • 相关阅读:
    利用 ImageAI 在 COCO 上学习目标检测
    pip 安装包提速
    opencv 学习资料
    Win10 小技巧
    tqdm:Python 进度条
    自制 COCO api 直接读取类 COCO 的标注数据的压缩文件
    线性回归模型的 MXNet 与 TensorFlow 实现
    cv2 与 matplotlib 的 Bug 记录
    pyinstaller 打包错误集锦
    python函数的进阶
  • 原文地址:https://www.cnblogs.com/axyz/p/3404071.html
Copyright © 2020-2023  润新知