2016-10-13 00:16:48 点击量:27 标签: 收藏本文
[JS]chrome、ff下flash的mousewheel事件失效(wmode=transparent)
- function addEvent(elem, type, handler) {
- typetype = type.replace(/^on/, '');
- if (elem.attachEvent) {
- elem.attachEvent('on' + type, handler);
- } else if (elem.addEventListener) {
- elem.addEventListener(type, handler, false);
- }
- }
目前想到的解决方法,监听页面的鼠标中轮事件,然后回传给flash
- //支持非IE、firefox浏览器
- !(function() {
- var swfEl = getEl('God_main');
- var ua = navigator.userAgent.toLowerCase();
- if (swfEl.addEventListener && !/(ie|opera)/.test(ua)) {
- var eventType = /firefox/.test(ua) ? 'DOMMouseScroll' : 'mousewheel';
- addEvent(swfEl, eventType, handleWheel);
- }
- })();
- function handleWheel(event) {
- var delta = /firefox/.test(navigator.userAgent.toLowerCase()) ? -event.detail : event.wheelDelta/40;
- var swfEl = getEl('swfId');
- swfEl.mouseWheel(delta);
- }
- AS中添加代码:
- ExternalInterface.addCallback('mouseWheel', mouseWheelCallback);
我们是一家提供综合软件外包与弱电工程服务的技术公司。
业务涵盖定制软件、管理系统、网站、小程序、APP、系统集成、网络布线、监控安防、门禁、机房建设及长期技术维护。
公司地址:湖北省宜昌市伍家岗区东站二路6号三峡(宜昌)大数据产业园海洋馆二楼A203室