- 浏览: 1090141 次
- 性别:
- 来自: 杭州
文章分类
- 全部博客 (695)
- 心情日记 (14)
- AS开发工具 (12)
- 文章转载 (99)
- AIR (5)
- 问题总结 (46)
- SWF格式 (7)
- 测试总结 (10)
- 外文资料 (9)
- 算法技术 (33)
- AS3常用开源库 (43)
- 源码范例 (102)
- FLEX (72)
- FLASH 优化 (33)
- 游戏开发 (49)
- 开发技术 (11)
- 工作应用 (34)
- AS3收集 (140)
- WebBase (0)
- 开发构想 (4)
- 设计模式 (2)
- 框架和框架范例 (19)
- RED5 (3)
- java开发 (3)
- JAVA (1)
- FLASH-3D (23)
- 3D (6)
- 书籍 (10)
- 业界信息资料 (3)
- C# (1)
- JavaScript (12)
- HTML5 (6)
- Flixel (1)
- D5Power RPG网页游戏引擎 (0)
- ColorMatrixFilter - 获得相应颜色的色调 函数 (0)
- Starling (0)
最新评论
-
老顽童203:
字体
水果忍者鼠标跟随特效制作[转载] -
hairball00:
[转] 放出超多的Flash组件源代码 -
he74552775:
flash AS3 RegExp简单功能用法(转) -
hanshuai1232000:
第四点,有利也有弊,等你做了大型的aprg,你就知道了
[转]位图数据内存优化 -
yangfantao:
太感谢
[转] 放出超多的Flash组件源代码
http://bbs.9ria.com/viewthread.php?tid=83888&extra=page%3D1%26amp%3Borderby%3Ddateline%26amp%3Bfilter%3D2592000
该死的浏览器 火狐应该被枪毙。。
透明模式下 火狐和谷歌浏览器中的flash无法使用滚轮事件。我这边的项目又需要有DIV浮在flash上面 所以 只能走JS滚轮了
思路是 建立一个数组存放需要使用滚轮的显示对象。注册鼠标OVER 和OUT事件来 处理焦点问题(FLASH 不好找焦点在谁手上,只有自己这样写了。 当然这样也存在着 两个需要滚轮的对象不能是父子关系,需要时平级关系) 当获取JS的滚轮事件 传递到该类,通知该显示对象指定的方法 告诉它 你该滚了。 另外在全屏模式 JS是使用不了的。所以要判断是否是全屏 来切换使用 滚轮事件(用JS还是用FLASH自己的)
先是JS部分
再是滚轮类
最后是调用方法
初始化部分
var k:WheelTool = WheelTool.getInstance();
k.Init(this.stage,true);
调用部分
public var JSW:WheelTool = WheelTool.getInstance(); //外挂滚轮
JSW.Add(this ,MouseWheelEventFun);
//滚轮事件
public function MouseWheelEventFun(n:Number):void
{
trace(n)
}
抛砖引玉 欢迎大家讨论 看看有没有更好的办法 解决 滚轮问题
该死的浏览器 火狐应该被枪毙。。
透明模式下 火狐和谷歌浏览器中的flash无法使用滚轮事件。我这边的项目又需要有DIV浮在flash上面 所以 只能走JS滚轮了
思路是 建立一个数组存放需要使用滚轮的显示对象。注册鼠标OVER 和OUT事件来 处理焦点问题(FLASH 不好找焦点在谁手上,只有自己这样写了。 当然这样也存在着 两个需要滚轮的对象不能是父子关系,需要时平级关系) 当获取JS的滚轮事件 传递到该类,通知该显示对象指定的方法 告诉它 你该滚了。 另外在全屏模式 JS是使用不了的。所以要判断是否是全屏 来切换使用 滚轮事件(用JS还是用FLASH自己的)
先是JS部分
function GetFlash() { return document.getElementById("Flash"); } if(!(document.attachEvent)) { window.addEventListener("DOMMouseScroll", handleWheel, false); } window.onmousewheel = document.onmousewheel = handleWheel; function handleWheel(e) { if (GetFlash()) { var t1 if(e.wheelDelta){ t1 = Number(e.wheelDelta)/40; }else if(e.detail){ t1 = Number(e.detail) } GetFlash().handleWheel(t1); } }
再是滚轮类
package Wheel { import flash.display.DisplayObjectContainer; import flash.display.InteractiveObject; import flash.display.Stage; import flash.events.FocusEvent; import flash.events.FullScreenEvent; import flash.events.MouseEvent; import flash.external.ExternalInterface; //JS滚轮调用 kinghost80 public class WheelTool { public var Arr:Array =new Array(); //需要被控制的数组 包含 一个现实对象 和一个方法 private static var _instance:WheelTool = new WheelTool(); public static var JSWheelBoo:Boolean = false; public var tempArr:Array; public var stage:Stage; //全屏模式下调用JS无效 public function WheelTool() { if (_instance) { throw new Error("只能用getInstance()来获取实例"); } } //初始化把舞台对象搞进来并决定是否使用JS滚轮 TRUE为使用JS public function Init(s:Stage , boo:Boolean= false):void { WheelTool.JSWheelBoo = boo; stage =s; ExternalInterface.addCallback("handleWheel", JSHandleWheel); stage.addEventListener(MouseEvent.MOUSE_WHEEL , FlashHandleWheel); } public static function getInstance():WheelTool { return _instance; } //加入显示对象和滚轮移动时候调用的方法 public function Add(dis:DisplayObjectContainer , fun:Function):void { Arr.push(new Array(dis ,fun)); dis.addEventListener(MouseEvent.MOUSE_OVER , mouseoverfun); dis.addEventListener(MouseEvent.MOUSE_OUT , mouseoutfun); } public function Del(dis:DisplayObjectContainer = null):void { if(tempArr!= null) { if(dis == tempArr[0]) { tempArr = null; } } for( var i:int = Arr.length-1; i>=0 ; i--) { if(Arr[i][0] == dis) { Arr.splice(i,1); } } } public function mouseoverfun(evt:MouseEvent):void { for each (var g:Array in Arr) { if(g[0]==evt.currentTarget) { tempArr = g; } } } public function mouseoutfun(evt:MouseEvent):void { for each (var g:Array in Arr) { if(g[0]==evt.currentTarget) { tempArr = null; } } } //js滚轮事件 public function JSHandleWheel(n:Number): void { if(!WheelTool.JSWheelBoo) { return; } if(tempArr != null) { tempArr[1](n); } } //flash滚轮事件 public function FlashHandleWheel(evt:MouseEvent): void { if(WheelTool.JSWheelBoo) { if(stage.displayState != "fullScreen") { return; } } if(tempArr != null) { tempArr[1](evt.delta); } } } }
最后是调用方法
初始化部分
var k:WheelTool = WheelTool.getInstance();
k.Init(this.stage,true);
调用部分
public var JSW:WheelTool = WheelTool.getInstance(); //外挂滚轮
JSW.Add(this ,MouseWheelEventFun);
//滚轮事件
public function MouseWheelEventFun(n:Number):void
{
trace(n)
}
抛砖引玉 欢迎大家讨论 看看有没有更好的办法 解决 滚轮问题
发表评论
-
HTTP/1.1协议规范(中文归纳版)
2012-04-18 16:39 2147一、介绍(introduction) ... -
[转] [Flash/Flex] 加载SWF性能VS影片剪辑性能
2012-03-15 22:29 0http://bbs.9ria.com/viewthread. ... -
请问如何才能让加载到一半的SWF不自动播放
2012-02-29 03:06 1554我用loader加载l=new Loader(); ... -
Embed绑定XML与txt文本文件
2011-12-28 15:54 4666使用Embed标签可以将图片绑定到swf中并显示,那么我 ... -
Flash_Rich_Text_Editor(完美的富文本编辑器)
2011-12-27 17:55 0Flash_Rich_Text_Editor(完美的富文 ... -
Matrix学习
2011-11-28 16:51 0Matrix学习 -
[转]三次贝尔曲线
2011-11-10 01:09 1939http://bbs.9ria.com/viewt ... -
[心得] 完美解决as3在ie中初始化时stageWidth和stageHeight为0的问题
2011-11-03 00:46 2951先看下面的一段脚本,这是比较经典的初始化脚本: pa ... -
Flash Player和Adobe AIR内部的垃圾回收机制
2011-10-29 22:37 0资讯类型: 翻译 来源页面: http://www.ad ... -
[转]FLASH与JS序列简单应用
2011-10-28 01:03 2104FLASH与JS序列简单应用 (一) 用swfob ... -
2个加载作用
2011-10-24 22:14 1878第一话:加载Base64 encoded string 通过 ... -
[原创]围绕任意一个中心点旋转
2011-10-23 13:46 0package guwanyuan.qicool.game.c ... -
[转]這是一個多分頁打印的類
2011-10-23 00:12 1414http://bbs.9ria.com/viewthread. ... -
[心得] localToGlobal 和 globalToLocal 的理解
2011-10-20 03:10 0http://bbs.9ria.com/viewthread. ... -
翻译: Flash文本引擎, 第三部分: 布局
2011-10-20 02:36 0http://www.riade ... -
翻译: Flash文本引擎, 第二部分: 交互
2011-10-20 02:34 0http://www.riadev.com/flex-thre ... -
翻译: Flash文本引擎, 第一部分: 概述
2011-10-20 02:33 0http://www.riadev.com/flex-thre ... -
海洋效果非常绚丽
2011-09-30 02:17 0海洋效果非常绚丽 -
[转][心得] numChildren > 0, getChildAt(0)却是null?
2011-09-25 00:55 0if(numChildren) ... -
[转]批量生成swf资源文件 JSFL
2011-09-22 22:58 0发布文件夹里的所有flash.jsfl var fol ...
相关推荐
Edge/Chrome中实现滚轮切换标签页功能 只需开启,浏览器中就可以实现鼠标滚轮切换标签页功能。 方便快捷
在本文中,我们将深入探讨如何使用C# Winform来创建一个具有鼠标滚轮放大/缩小图片功能以及类似于QQ截图的程序。这个应用的核心是利用Windows Forms控件和事件处理,结合图像处理技术来实现用户友好的交互体验。 ...
原生JavaScript监听滚轮事件稍微复杂一些,因为需要考虑浏览器兼容性问题。可以使用`addEventListener`方法添加事件监听器,并处理不同的滚轮事件名称。 ```javascript document.addEventListener('...
"FixWmodeMouseWheel"这个示例代码提供了一种解决方案,它通过监听和处理鼠标滚轮事件,确保即使在`wmode`设置为可能导致问题的值时,滚轮操作也能正确响应。具体实现可能包括以下步骤: 1. **事件监听**: 在Flex...
"R14下滚轮缩放ZOOM补丁"是一个专门针对这个版本的软件优化工具,它解决了滚轮缩放功能的问题,提升了用户在R14中查看和操作设计图纸的体验。 在原始的R14版本中,滚轮功能可能并不支持或其缩放效果不尽如人意。...
在本项目中,我们将探讨如何利用OpenGL实现鼠标交互功能,包括左键旋转、右键平移和滚轮缩放,以实现更丰富的用户界面体验。 首先,我们要理解OpenGL中的基本概念,如顶点、向量、矩阵和变换。在3D空间中,我们通常...
为了解决这个问题,可以使用`SwingWorker`来异步加载图片,保证用户界面的流畅性。 8. **资源管理与释放**: 在程序运行过程中,确保及时关闭打开的文件流和释放占用的内存资源是非常重要的。使用`finally`块或者try...
标题“解决苹果电脑双系统鼠标滚轮不能用”所涉及的问题是苹果Mac电脑在运行Windows双系统时,遇到鼠标滚轮无法正常工作的情况。这可能是由于驱动程序不兼容或者未正确安装导致的。苹果电脑(Mac)通常配备了专有的...
对于那些已经出现滚轮问题的设备,这种软件甚至可能成为解决问题的临时解决方案,直到设备得到维修。 总的来说,黑莓替代滚轮的软件是科技进步的一个体现,它利用软件的优势弥补硬件可能出现的问题,提升了用户体验...
在GIS开发领域,ArcGIS Engine是一个非常重要的工具,它提供了丰富的API和组件,使得开发者能够构建桌面、Web以及移动应用程序。...总之,理解坐标系统转换和正确处理地图事件是解决这类问题的关键。
为了解决这些兼容性问题,开发者创建了jQuery MouseWheel插件,它提供了一个统一的接口来处理这些事件,使得代码在所有主流浏览器上都能正常工作。 jQuery MouseWheel插件的核心功能是监听鼠标滚轮事件并触发相应的...
我用的是雷柏的3100无线鼠标,滚轮经常出现回滚的现象,就是鼠标滚轮向上滚动的时候,时不时的会向下滚动一次,非常的恼火,于是乎,写了个小程序基本搞定了这个问题,有类似问题的朋友可以试试 使用方法: -直接启动,或者...
总的来说,BB8700模拟滚轮软件是一款针对特定问题设计的创新解决方案。它不仅仅是一个软件,它代表了现代智能手机软件设计中的一种趋势——即在硬件出现问题时,通过软件创新来弥补缺陷,增强用户体验。对于那些依赖...
在易语言中,滚轮操作控件是一种常见的用户界面元素,它允许用户通过鼠标滚轮来执行特定的操作,例如滚动文本、调整音量或者在图像之间切换等。在本案例中,我们主要探讨的是如何利用易语言实现滚轮操作控件,并通过...
QTphoto_浏览器_图片浏览器_是一款基于QT框架开发的图像浏览软件,专为用户提供便捷的图片查看、操作体验。这款应用程序充分利用了QT库的强大功能,实现了多种图像处理操作,如放大、缩小、旋转、平移以及复原等,...
VB6.0滚轮助手是一款基于VB6.0开发的工具软件,主要用于解决VB6.0程序在Windows系统下无法使用鼠标滚轮的问题。它提供了简单易用的接口,可以帮助开发者快速实现鼠标滚轮的功能。 VB6.0滚轮助手的主要特点包括: 1...
Edge浏览器驱动程序是微软开发的一款用于自动化测试和网页交互的工具,它允许程序员,特别是Python开发者,通过Selenium库来控制Microsoft Edge浏览器。Selenium是一个强大的Web自动化框架,广泛应用于功能测试、...
总之,这个程序通过“Alt+鼠标右键”的组合键实现了滚轮模拟功能,为滚轮损坏或无滚轮鼠标的用户提供了解决方案。这一技术涉及到对操作系统API的理解和应用,以及对鼠标事件的精确模拟。这样的工具在日常工作中可以...
针对题目中的内容,我们将深入探讨如何复位鼠标滚轮行数,特别是针对ThinkPad笔记本电脑,以及如何通过自编源代码实现这一功能。首先,我们要理解鼠标滚轮行数的概念。 鼠标滚轮行数是操作系统识别鼠标滚动时每一...
`NumberPicker`虽然提供了基本的滚轮选择功能,但在某些情况下可能无法满足我们对界面样式或交互效果的定制需求,这时就需要自定义滚轮选择器。 二、自定义滚轮选择器的关键步骤 1. 创建布局文件:首先,我们需要...