Просмотр полной версии : клик над объектом
Как запустить кусок кода при клике мыши именно над нужным объектом?
onMouseDown срабатывает при клике в любой области, какие бы я не вводил пути...
Чувствую, придется описывать ситуацию полностью.
Я создаю скроллбар. При этом при нажатии на ползунок должно выполняться его перемещение, а при отпускании - соответственно остановка (все перемещения и рассчеты собственно скролла работают правильно, недочет с нажатиями обнаружился при тестировании). При этом нужно что б факт нажатия работал только над ползунком, а перемещение ползунка - после нажатия не зависимо от положения мыши, собственно как и отпускание. onPress поэтому не подходит (или я его не правильно применяю)
Вот мой изначальный код.
_root.newstext.scrollmc.onRollOver = function() {
_root.newstext.scrollmc.onMouseDown = function() {
startDrag();//параметры для ползунка
_root.newstext.scrollmc.onEnterFrame = function() {
//взаимодействие со скроллируемой областью (мувик)
};
};
};
_root.newstext.scrollmc.onMouseUp = function() {
delete _root.newstext.scrollmc.onEnterFrame;
stopDrag();
};
olexandr
20.04.2008, 15:56
вот выдержка из моего скроллбара
выложил бы исходник, но еще не дописал
scroll.dragger_mc.onPress = function() {
startDrag(this, false, this._x, beginY, this._x, endY-this._height);
};
scroll.dragger_mc.onRelease = scroll.dragger_mc.onReleaseOutside=function () {
this.stopDrag();
};
function dragging() {
var percent:Number = mask._height/content._height;
if (percent<1) {
scroll._visible = true;
scroll.dragger_mc._height = (endY-beginY)*percent;
content._y = mask._y+(mask._height-content._height)*(scroll.dragger_mc._y-beginY)/(endY-beginY-scroll.dragger_mc._height);
} else {
scroll._visible = false;
}
}
olexandr, спасибо, помогло
ЗЫ. На будущее там при создании может быть небольшая запара с вычислением формулы зависимости движения ползунка от мувика (если они находятся в разных координатах). Если будет нужно - пиши в личку (тему просто могу пропустить), поделюсь.
olexandr
21.04.2008, 22:27
спасибо, но пока проблем нету
да и решать алгебраические задачки люблю сам :)
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.