![]() |
|
||||||||||
|
|
|
|||||
|
Что за чудеса: при клике (НАЖАЛ и держу) - событие происходит дважды?
onMouseUp - та же ерунда... |
|
|||||
|
Регистрация: Jun 2014
Сообщений: 52
|
Без этой строчки Mouse.addListener(PINCursor); тоже работает и событие происходит однажды.
|
|
|||||
|
Агаааа.... вот в чем дело.
То есть клип автоматом на мышь подписан, а я его еще раз туда же? |
|
|||||
|
Регистрация: Jun 2014
Сообщений: 52
|
Этого я уже не знаю, ибо мои познания совсем не системные)
|
|
|||||
|
Ну и продолжим.......
Опять двоится ивент! http://188.226.221.96/SOUNDSTAGE/stickers.swf В ИДЕ - нрмально, в локальном ФП - нормально, в ХРОМЕ - нормально, в ФФ - двойной... Особенности браузера???? Причем происходит однократно, при самом первом клике. Потом - нормально.... Что за..... testlog.text = "init *** DoubleClick.as "+"\n" var eventDispatcher:Object = new Object(); eventDispatcher.makeEvent = function( my_event, val ){ this.broadcastMessage( my_event, val ); } AsBroadcaster.initialize( eventDispatcher ); var mouseListener:Object = new Object() Mouse.addListener( mouseListener ) mouseListener.onMouseDown = function() { testlog.text += ".onMouseDown"+"\n" testlog.text += " getTimer(): "+getTimer()+" this.xTime: "+this.xTime+" DIFF: "+(getTimer()-this.xTime)+" FLAG: "+this.flag+ "\n" if ( getTimer()-this.xTime<300 && this.flag ){ testlog.text +=" [][][] HAVE DOUBLE CLICK"+"\n" eventDispatcher.makeEvent( "onDoubleClick" ); this.flag = false; } else { testlog.text +=" *** NO DOUBLE CLICK"+"\n" this.xTime = getTimer() this.flag = true; } } mouseListener.xTime = getTimer() mouseListener.flag = true testlog.text += "iniTime: "+mouseListener.xTime+"\n" |
|
|||||
|
...
модератор форума
Регистрация: Sep 2006
Адрес: Minsk
Сообщений: 4,286
|
Цитата:
Возможно, косяк плеера. Потестить к сожалению не в чем. Не знаю, связано или нет, ловил вот такую штуку, решил костылем. private function gem_touchBeganHandler(event:TouchEvent):void { var touch:Touch = event.getTouch(Context.starlingStage, TouchPhase.BEGAN); if (!touch || touch == this._prevTouch) return; // trace("touch began", touch.target, "frame", i, "id", touch.id, "tapCount", touch.tapCount, this._prevTouch == touch); // XXX костыль для FireFox, в одном карде при нажатии на объект диспатчися один и тот же тач дважды с фазой began // XXX поэтому запоминаем предыдущий и сверяем с последующим, если тот же то выходим (player 18.0.0.194) this._prevTouch = touch; |
|
|||||
|
Нет. Тут уже вторая часть марлезонского балета.
В данном случае не клип подписан, а просто объект-слушатель. В первом случае дабл был постоянный, а тут вот однократный. |
![]() |
![]() |
Часовой пояс GMT +4, время: 01:55. |
|
|
« Предыдущая тема | Следующая тема » |
|
|