Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   mousewheel+swf+chrome = omg (http://www.flasher.ru/forum/showthread.php?t=206168)

netoniel 16.01.2014 17:34

mousewheel+swf+chrome = omg
 
Взял пример отсюда (https://code.google.com/p/mousewheeltrap/). Залил папку demo сюда (http://ilempi.ru/demo/). Почему локально на компе mousewheel работает, а на хостинге нет(побывал изменить хостинг)? Причем все остальные браузеры хоть как то, но работают, а вот хром в никакую.

Dukobpa3 16.01.2014 17:35

У хрома свой плеер с нардами и одноклоассницами.

KumoKairo 16.01.2014 19:55

Я делал библиотеку с учетом глючности пеппер флеш плагина, он либо отрубает скролл полностью, либо разрешает все полностью

Скачайте библиотеку отсюда, там быстрая настройка

На маке проверял, на винде проверял, в хроме проверял (последний раз в начале осени). Если что не так - отпишитесь или Issue откройте)

in4core 16.01.2014 20:08

Цитата:

У хрома свой плеер с нардами и одноклоассницами.
Уж не знаю причем тут плеер - у меня корректно работает в хроме маусВхил и всегда работал. Не придумывайте тут.

netoniel 16.01.2014 20:32

Цитата:

Сообщение от in4core (Сообщение 1157528)
Уж не знаю причем тут плеер - у меня корректно работает в хроме маусВхил и всегда работал. Не придумывайте тут.

А какая версия хрома? У меня тоже корректно работает, только если index.html открыть с папки на компе.

KumoKairo 16.01.2014 21:15

in4core, проблема одновременной прокрутки флеш в пеппер хроме не раз поднималась на SO, и довольно известна. Проблема в том, что если у вас стоит дебаг версия флеш плеера, то это уже не пеппер флеш, и он уже работает как надо. Я как раз на этом накололся - у меня на компе в хроме стоял дебаг плагин, и в нем все работало без проблем. На других компах в офисе (причем выборочно) в хроме не работала блокировка прокрутки. Для того, чтобы нормально отладить прокрутку пришлось снести дебаг плагин и оставить родной пеппер.
Проблема есть, мы не придумываем ;)

in4core 17.01.2014 01:02

KumoKairo - да, я действиттнлно всегда компилю в дебаге и выкладываю дебажным плеером. А кто мешает только с ним и работать? Зачем заливать на серв релиз? В чем разница то?

KumoKairo 17.01.2014 01:18

in4core, проблема в том, что у большинства пользователей стоит обычная версия, а не дебажная..
Вы же не для себя делаете приложение, а для пользователей. Вот они и мешают нам, программистам, работать только с дебаг плеерами. Атата, плохие пользователи!
Моя бы воля - всех бы заставил дебаг версию поставить!

netoniel 17.01.2014 10:33

А вообще этот pepperflash очень нужен? Там же 2 файла, еще родной от макромедии. Я вот сейчас отключил пеппер и все работает отлично. У всех пользователей хрома по умолчанию включен пеппер? А вот, заметил что при открытии фишек при прокручивании видео уползают наверх и застревают там. Ненавижу хром =)

KumoKairo 17.01.2014 11:37

Да, у всех пользователей по умолчанию стоит пеппер.
Попробуйте мою библиотеку, она должна работать ;)

in4core 17.01.2014 11:39

Цитата:

in4core, проблема в том, что у большинства пользователей стоит обычная версия, а не дебажная..
Вы же не для себя делаете приложение, а для пользователей. Вот они и мешают нам, программистам, работать только с дебаг плеерами. Атата, плохие пользователи!
Моя бы воля - всех бы заставил дебаг версию поставить!
ЧТо я ЩаС прочитал ? Откуда вы это выдумали? Надстройка дебаг-релиз это один плеер то по-сути. Если у юзера не стоит дебаг в браузере, он у него будет работать как РЕЛИЗ в случае выпадения окон с ошибкой.
Я знаю о чем говорю - у меня ни одного пиложения в релизе не сделано, и еще ни один пользователь не пожаловался, что что то не запускается.

KumoKairo 17.01.2014 11:57

in4core, а с блокировкой мыши вы дело имели? Блокировка мыши делается с помощью JS кода на странице. От того, какая версия плеера настроена в таргет (дебаг или релиз), не зависит работа библиотеки по отключению прокрутки мыши.
Причина, по которой у вас в хроме работает прокрутка в том, что вы переустановили его стандартный плагин (пеппер флеш) на свой, дебажный от адоби. Я не говорил про таргет сборки, я говорил про рабочий плагин в браузере.
К слову говоря, у меня в пеппер плагине в хроме тоже не работает пример скролла ТС (по приведенной им в первом посте ссылке)

Из-за того, что в мире существует два вида флеш плееров - пеппер и адоби, приходится тестировать на обоих. Дебаг версии пеппера я, к сожалению, не видел.

Разумеется, если нет манипуляций со страничным кодом и блокировкой прокрутки, все будет работать нормально, потому что в этом случае флеш будет полностью самодостаточным, без вероятности что на конечном клиенте что-то будет не так

Еще часто жалуются на странную работу ExternalInterface в пеппер флеше, та же история. Проверяем в дебаг плагине от адоби - все норм. В пеппере может не работать. И т.д.

---UPD

И да, кстати, это поведение распространяется не только на дебаг версии плееров, если поставить обычный плагин от адоби, то работа будет такой же предсказуемой. Главное что плагин от адоби - это все, что требуется :)

Просто в данном случае получается, что работает из-за того, что дебаг версия плагина стоит)

netoniel 17.01.2014 13:23

Цитата:

Сообщение от KumoKairo (Сообщение 1157570)
Да, у всех пользователей по умолчанию стоит пеппер.
Попробуйте мою библиотеку, она должна работать ;)

Хм ваша работает на хостинге, но не работает локально на компе +). В любом случае спасибо большое. Вот она тут в действии http://ilempi.ru/demo1/. Хотя нет, она прокручивает и страницу http://ilempi.ru/demo/.

KumoKairo 17.01.2014 14:52

Щас посмотрю, возможно что-то изменилось с того времени.

Проверьте, правильно ли задан идентификатор флеш объекта - в коде должен быть такой же, как на странице.

Psycho Tiger 20.01.2014 11:23

Цитата:

Я знаю о чем говорю - у меня ни одного пиложения в релизе не сделано, и еще ни один пользователь не пожаловался, что что то не запускается.
Так я же жаловался, когда ты своё пиложение показывал, лол.

Зачем выкладывать приложение в релизе, а не в дебаге?... Ну, например скорость работы и конечный размер файла. Вообще странно объяснять почему в релиз надо заливать релиз чуваку с 3х-летним опытом.

in4core 20.01.2014 15:01

Цитата:

Так я же жаловался, когда ты своё пиложение показывал, лол.
Так вот это и замечательно, что ты как юзверь имеющий дебаг плеер поймал exeption который бы ( если бы ты был активным пользователем данного ресруса ) - отправил бы в багЛист и разработчики исправили ошибку. Это как раз очень полезно, мы например в некоторых проектах специально заставляем заказчиков ставить дебаг, чтобы понять где ошибка.
Вот к примеру : недавно я создавал тему про падение плеера по ошибке звука. Клиент заявляет, что у него не работает игра ни в одном браузере, виснет насмерть после нажатия кнопки и все. Кто бы не тестировал, у всех работает, а вот у одного избранного - фига. Заставили поставить дебаг - и сразу выловили ошибку. Безусловно ошибка странная, никто не мог знать, что SoundChannel падает на null если отключены динамики напрочь, или драйверов карты нет, но как видишь дебаг помог найти это.

По поводу веса. Протестировал щас на разных проектах. Вес уменьшается на 30-150 кб, что несущественно ни разу. С чем связано уменьшение?

По поводу скорости работы : где бы почитать на русском об этом ? Дай ссылку. Не исключаю , что я много чего не знаю, вот хоть подучусь :) Ссылку в студию, и спасибо :)

СлаваRa 20.01.2014 15:36

Приложение собранное в debug режиме, на мобилках 146% работает почти в 2 раза медленнее, по поводу веба, можете сделать тест да посмотреть сами, отлавливать ошибки за счет debug плееров, не очень хорошая практика, я бы советовал научиться делать это в release(стек трейс там доступен, с swf-version=18 и не важно под какой плеер вы собираете)

in4core 20.01.2014 16:46

Цитата:

на мобилках 146%
С мобилками я не работаю, но на будущее буду знать. Спасибо.

VadimuZ 20.01.2014 20:28

Все бы хорошо ток в OSX 10.7.5, Safari 6.1.1, FP 11.9 не захватывает скролл

KumoKairo 20.01.2014 21:52

Она почему-то вообще перестала работать, не могу понять причину.

Проверил свой старый проект, в котором использовал эту же либу - все работает, скролл захватывается

Мистика.

netoniel 20.01.2014 22:29

Цитата:

Сообщение от KumoKairo (Сообщение 1157784)
Она почему-то вообще перестала работать, не могу понять причину.

Проверил свой старый проект, в котором использовал эту же либу - все работает, скролл захватывается

Мистика.

А то, что локально на компе все работает, а на хостинге нет - не мистика? :) Мб у пеппера два режима работы?

Psycho Tiger 20.01.2014 22:39

Цитата:

По поводу веса. Протестировал щас на разных проектах. Вес уменьшается на 30-150 кб, что несущественно ни разу. С чем связано уменьшение?
Рассуждай логически. Что вырезается из релиз версии? То, что нужно для дебага.
Что это? Служебная информация. Какая? Например та, которая изменяет стектрейс и позволяет тебе видеть аж строчки, в которых ошибка свалилась. На каждый опкод нужно указать строчку кода, которая это вызвало. Вот тебе и лишний вес.
Скорость? Ну, что происходит когда плеер переходит к следующему опкоду? Он его выполняет – если нужно, или игнорирует – если не нужно. Эта скачка тоже отнимает время. Если совсем к чертям удалить ненужные опкоды – и бегать будет быстрее.

KumoKairo 20.01.2014 23:13

Цитата:

А то, что локально на компе все работает, а на хостинге нет - не мистика? Мб у пеппера два режима работы?
У меня вообще никак не работает :)

А вообще да, есть подозрение что режими работы разные, потому что с External Interface такая бяка.

Библиотека работает по принципу "Добавляем JS код на страницу через ExternalInterface.call("eval", codeString)"

Но блин, я не могу понять почему старый проект работает с этой либой (Я НИЧЕВО НИ ДЕЛАЛ ОНО САМО), а новые нет.

Akopalipsis 20.01.2014 23:17

Может вот эта тема поможет. Могу ошибиться, но вроде из той-же темы.

VadimuZ 20.01.2014 23:32

Я ток сегодня просил у etc его реализацию захвата скролла (Денис тебе респект!), но она к сожалению под OSX у меня не заработала.

Вот нашел еще https://code.google.com/p/mousewheeltrap/
Под винды и линух работает на ура! А вот с OSX опять беда, скролл захватывается намертво так что и событие MouseEvent.MOUSE_WHEEL не срабатывает.

KumoKairo 20.01.2014 23:38

Цитата:

скролл захватывается намертво так что и событие MouseEvent.MOUSE_WHEEL не срабатывает.
Я это решал диспатчем собственного события на сцену, и все работало прекрасно до какого-то критического момента.
Рабочий вариант либы захвата скролла можно посмотреть тут (там кривой прелоадер, я знаю, да, это довольно старый проект). В меню при прокрутке списка друзей можно увидеть работу.

Либа 100% та, о которой я уже упоминал 25 раз, но при создании новых приложений по какой-то причине отказывается работать.

Akopalipsis 20.01.2014 23:57

Был бы рад, если кто-то из ищущих поделился рабочим вариантом, который везде работает.

netoniel 29.01.2014 11:54

все тихо тут?

KumoKairo 29.01.2014 15:12

Исправил либу, у меня теперь все работает
http://scroll-check.herokuapp.com/ для проверки (надо потестить на маке, у меня сейчас нет возможности)

Ссылка на либу осталась прежней: https://github.com/KumoKairo/BlastedMouseWheelBlock

Перескачать - переподключить и будет работать.

Одно небольшое "НО" - не смог заставить работать ExternalInterface локально в хроме. В пеппере в хроме работает только удаленно по не совсем понятной мне причине.

netoniel 29.01.2014 15:42

Цитата:

Сообщение от KumoKairo (Сообщение 1158344)
Исправил либу, у меня теперь все работает
http://scroll-check.herokuapp.com/ для проверки (надо потестить на маке, у меня сейчас нет возможности)

Ссылка на либу осталась прежней: https://github.com/KumoKairo/BlastedMouseWheelBlock

Перескачать - переподключить и будет работать.

Одно небольшое "НО" - не смог заставить работать ExternalInterface локально в хроме. В пеппере в хроме работает только удаленно по не совсем понятной мне причине.

Вау, работает, главное в хроме все ок! Это же as3 надеюсь?

KumoKairo 29.01.2014 16:24

Библиотека на AS3, там в виде строки хранится JS код, который регистрируется на странице. Поэтому подключение быстрое, через один файл .as.
Можно сделать отдельный js файл с кодом для наглядности, но так подключать дольше будет

Товарищ проверил на маке - работает и в сафари и в хроме

netoniel 29.01.2014 17:58

Заметил, что в хроме в три раза быстрее увеличивается круг и это не вина wheel.delta. Там похоже функция function scrollHappened повторяется два раза. Я все это использую в list, там один скролл перемещает на три позиции в хроме.

KumoKairo 29.01.2014 20:56

Там фильтрация значения дельты перед тем, как во флешку передать, может с этим какая-то гадость возникает

Попробую пронормировать по-человечески :)

На маке скролл по 3, на винде практически во всех браузерах 120. В опере прокрутка вверх ногами
щас разберемся

netoniel 28.02.2014 11:20

Все тихо тут?

Добавлено через 1 час 51 минуту
Что то я совсем запутался теперь 0_0. Убрал все эти костыли, оставил как есть и тут какой то глюк (http://ilempi.ru/konstruktor) Если мышку держать над текстовом полем (глубина, ширина, высота) то одновременный скроллинг прекращается. Как??? И работает во всех браузерах. Что за глюк?

Добавлено через 2 часа 17 минут
После некоторых исследований )) выяснилось, что причина тому длина текста o_0. Т.е. ширина текста относительно ширины текст филда. Если ширина текста где-то в два раза меньше то все норм, а если больше то скроллинг прекращается там.


Часовой пояс GMT +4, время: 08:57.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.