![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Регистрация: Jun 2004
Адрес: Екб
Сообщений: 63
|
Здравствуйте,
столкнулся с проблемой: не могу разобраться как отловить начало/конец "таскания" контента в скроллпейне. Заранее спасибо. Неужели никто не сталкивался? ![]() Может быть непонятно объяснил проблему: есть scrollPane и есть необходимость отслеживать, когда пользователь проматывает содержимое. Таких возможностей у пользователя две: 1. Использование скроллбаров, ловится без проблем, через: 2. Таскание контента мышью, при scrollDrag=true. Дак вот вопрос как раз в том, как определить то, что пользователь потащил контент мышью? Заранее спасибо ![]() Последний раз редактировалось etc; 17.05.2007 в 12:18. |
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
ScrollPane какой? v2, v3, flex?
|
|
|||||
|
Регистрация: Jun 2004
Адрес: Екб
Сообщений: 63
|
Цитата:
|
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
Документацию читать нынче не модно?
http://livedocs.adobe.com/flash/9.0/main/00003452.html Почему нельзя проверять при scroll значение scrollDrag? |
|
|||||
|
Регистрация: Jun 2004
Адрес: Екб
Сообщений: 63
|
Цитата:
Цитата:
Вопрос в том, как перехватить начало/конец "таскания за контент" |
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
Хак:
sp.scrollDrag = true;
sp.spContentHolder.onPress = function() {
this._parent.dispatchEvent({type:'dragStart'});
this._parent.startDragLoop();
}
sp.spContentHolder.onRelease = sp.spContentHolder.onReleaseOutside = function() {
this._parent.dispatchEvent({type:'dragEnd'});
delete this.onMouseMove;
}
![]() После этого кода лучше не трогать scrollDrag. |
|
|||||
|
Регистрация: Jun 2004
Адрес: Екб
Сообщений: 63
|
Спасибо, попробовал, но вот такая кострукция:
main_pane.scrollDrag = true;
main_pane.spContentHolder.onPress = function() {
this._parent.dispatchEvent({type:'dragStart'});
this._parent.startDragLoop();
}
main_pane.spContentHolder.onRelease = main_pane.spContentHolder.onReleaseOutside = function() {
this._parent.dispatchEvent({type:'dragEnd'});
delete this.onMouseMove;
}
scrollListenter=new Object();
scrollListenter.dragEnd=function() {
trace("smth");
}
main_pane.addEventListener("dragEnd", scrollListenter);
|
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
Гм, ну тогда соберите нерабочий пример, я поправлю.
|
|
|||||
|
Регистрация: Jun 2004
Адрес: Екб
Сообщений: 63
|
Спасибо, __etc,
начал собирать неработающий вариант и в нем все заработало, хотя в старом по прежнему тишина ![]() В старом варианте не отрабатывается сам клик мышью, то есть код: не к чему не приводит. Стоит просто копипастом перенести scrollPane и этот код в новый файл — все начинает работать... не могу разобраться почему может быть так... |
|
|||||
|
Регистрация: Jun 2004
Адрес: Екб
Сообщений: 63
|
Разобрался: просто scrollPane не успевал подгрузиться.
__etc, спасибо большое. |
![]() |
![]() |
Часовой пояс GMT +4, время: 00:06. |
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | |
| Опции просмотра | |
|
|