`

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

阅读更多

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

[javascript] view plain copy
  1. <mce:script language= "JavaScript"  type= "text/javascript" ><!--  
  2.     if (!(document.attachEvent)) {  
  3.         window.addEventListener("DOMMouseScroll" , handleWheel,  false );  
  4.     }  
  5.     function  handleWheel(event) {  
  6.         var  app = window.document[ "${application}" ];  
  7.         if  (app) {  
  8.             var  o = {x: event.screenX, y: event.screenY,  
  9.                 delta: event.detail,  
  10.                 ctrlKey: event.ctrlKey, altKey: event.altKey,  
  11.                 shiftKey: event.shiftKey}  
  12.              
  13.             app.handleWheel(o);  
  14.         }  
  15.     }  
  16. // --></mce:script>   

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

 

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

[javascript] view plain copy
  1. ExternalInterface.addCallback( "handleWheel" , handleWheel);  

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

 

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

[javascript] view plain copy
  1. public   function  handleWheel(event:Object):  void  {  
  2.     var  obj:InteractiveObject =  null ;  
  3.     var  tmpGlbPoint:Point =  new  Point( this .mouseX,  this .mouseY);  
  4.     var  objects:Array =  this .getObjectsUnderPoint(tmpGlbPoint);  
  5.     for  ( var  i: int  = objects.length - 1; i >= 0; i--) {  
  6.         if  (objects[i] is InteractiveObject) {  
  7.             obj = objects[i] as InteractiveObject;  
  8.             break ;  
  9.         } else  {  
  10.             if  (objects[i] is Shape && (objects[i] as Shape).parent) {  
  11.                 obj = (objects[i] as Shape).parent;  
  12.                 break ;  
  13.             }  
  14.         }  
  15.     }  
  16.     if  (obj) {  
  17.         var  tmpP:Point = obj.globalToLocal(tmpGlbPoint);  
  18.         var  mEvent:MouseEvent =  new  MouseEvent(MouseEvent.MOUSE_WHEEL,  true false ,  
  19.             tmpP.x, tmpP.y, obj,  
  20.             event.ctrlKey, event.altKey, event.shiftKey,  
  21.             false , -Number(event.delta));  
  22.         obj.dispatchEvent(mEvent);  
  23.     }  

分享到:
评论

相关推荐

    flash+actionscript学习的实例和教程

    在IT领域,Flash和ActionScript是 Adobe Animate (曾经名为Flash Professional) 中的关键组成部分,用于创建交互式动画、游戏和富互联网应用程序。本资源包包含了关于"flash+actionscript学习的实例和教程",旨在...

    flashdevelop+actionscript

    在FlashDevelop中,你可以直接编写AS3代码,IDE会提供语法高亮、代码提示和错误检查,帮助你快速定位并解决问题。 其次,FlashDevelop与FlashDebugger的配合是开发过程中的关键。FlashDebugger是Adobe提供的一个...

    Flash+ActionScript+3.0

    在数字媒体和互联网应用的世界里,Flash+ActionScript 3.0无疑是曾经的王者,它以其强大的交互性和丰富的视觉效果吸引了无数开发者和设计师。ActionScript是Adobe Flash平台的核心,而ActionScript 3.0的发布,更是...

    Flash+ActionScript+3.0高级动画教程+源代码

    《Flash+ActionScript 3.0高级动画教程》是一本深度探索Flash平台中ActionScript 3.0编程和动画制作的教程。ActionScript是Adobe Flash Professional中的核心编程语言,用于创建交互式内容、游戏和应用程序。这个...

    Flash+ActionScript+3.0动画教程pdf

    Flash+ActionScript+3.0动画教程

    Adobe+Flash+Professional+CS5+的+ActionScript+3.0+参考

    Adobe Flash Professional CS5 是一款强大的动画和交互式内容创作工具,尤其在开发基于ActionScript 3.0的富互联网应用程序(RIAs)方面表现出色。ActionScript 3.0是Flash平台的核心编程语言,它为开发者提供了面向...

    Flash+ActionScript+3.0动画教程.pdf

    Flash+ActionScript+3.0动画教程.pdf

    一个DIV+CSS+JAVASCRIPT+FLASH的简单设计网站

    《构建基于DIV+CSS+JAVASCRIPT+FLASH的简单设计网站详解》 在Web开发领域,一个优秀的网站设计不仅需要美观的界面,还需要良好的用户体验和技术支持。本篇文章将深入探讨如何利用DIV+CSS+JAVASCRIPT+FLASH技术来...

    FLASH+ACTIONSCRIPT3.0从入门到精通PDF版

    《FLASH+ACTIONSCRIPT3.0从入门到精通》是一本专为初学者和进阶者设计的教程,旨在帮助读者全面掌握Flash与ActionScript 3.0的核心技术和应用。这本书的PDF版本提供了一种便捷的方式,使学习者可以随时随地通过电子...

    Adobe+Flash+cs5+ActionScript3参考文档

    这份"Adobe Flash CS5 ActionScript 3参考文档"包含了关于如何使用Flash CS5和ActionScript 3.0进行开发的详细信息。 ActionScript 3.0是面向对象的编程语言,与早期版本相比,它具有更强的类型检查和错误处理机制...

    FLASH+ACTIONSCRIPT3.0从入门到精通.pdf

    FLASH+ACTIONSCRIPT3.0从入门到精通.,中午版,时候新手,内容全面

    Flash+ActionScript+3[1].0动画教程

    Flash+ActionScript+3[1].0动画教程

    Flash+ActionScript+3.0动画教程

    《Flash+ActionScript+3.0动画教程》是一本深入探讨ActionScript 3.0在Flash平台中应用的专业教程。该教程旨在帮助学习者全面掌握ActionScript 3.0编程语言,提升在创建互动式动画、游戏以及网络应用程序时的能力。...

    Flash+ActionScript+3[1].0动画教程.pdf

    Flash+ActionScript+3[1].0动画教程.pdf

    actionscript3.0学习flash和as3.0的最佳助手!!!!

    英文版actionscript3.0,学习flash和as3.0的最佳助手!!!!

    Flex+ActionScript+JAVA等学习教程集合

    1. **ActionScript编程**:ActionScript 3.0是Flash Player和Adobe AIR支持的版本,它拥有更高效、更严格的类型检查和更好的性能。学习ActionScript,你需要理解其基本语法、类和对象的概念、事件处理机制、数据类型...

    JavaScript与ActionScript3交互问题总结

    在Web开发中,JavaScript是一种广泛使用的客户端脚本语言,而ActionScript3(AS3)则是Adobe Flash平台的核心语言。两者在不同的领域中发挥着重要作用,但有时需要进行交互,比如在富互联网应用(RIA)开发中。本文...

    ActionScript与JavaScript相互调用

    2. **从JavaScript控制Flash**:在某些情况下,开发者希望使用JavaScript访问或控制Flash影片中的对象或行为,比如读取文本框内容、改变背景色或加载图片等。 #### 实现原理 要实现ActionScript与JavaScript之间的...

    Javascript+Flash实现图片切换

    在本文中,我们将深入探讨如何使用JavaScript和Flash技术来实现图片切换效果,这种技术常见于网站中的图片轮播或幻灯片展示。我们将基于提供的标题“Javascript+Flash实现图片切换”以及描述“模拟新浪图片切换,...

Global site tag (gtag.js) - Google Analytics