Просмотр полной версии : Как изменить курсор при ...
FreeRider
02.02.2004, 04:41
Итак, вот в чём проблемка...
Я хочу, чтобы при наведении на кнопку (adress) "родной" курсор мыши исчезал и появлялся клип (cursor), а при убирании возвращался старый...
Я понимаю, что для cursor мона написать
onClipEvent (load) {
Mouse.hide();
this.startDrag(true);
}
но не знаю как привязать к adress... (hitTest?) А может лучше написать сценарий для adress? :confused:
Кнопку в мувик, а для него написать:
MovieClip.prototype.kursor = function() {
this.onRollOver = function() {
Mouse.hide();
_root.attachMovie("cursor", "cursor", 99);
_root.cursor._x = _root._xmouse;
_root.cursor._y = _root._ymouse;
this.onEnterFrame = function() {
_root.cursor._x = _root._xmouse;
_root.cursor._y = _root._ymouse;
};
};
this.onRollOut = function() {
Mouse.show();
_root.cursor.removeMovieClip();
delete this.onEnterFrame;
};
};
mc.kursor();//mc - мувик с кнопкой
//cursor - Identifier для мувика/курсор/, при Linkage/библиотека/
FreeRider
02.02.2004, 16:18
Yeah! Спасибо блин большое! Теперь всё круто.... во всяком случае пока ...круто
а вот еще вопрос, а как изменить курсор над текстовым полем imput?
Те типа искал? ;-)
Ну а что тебе мешает поместить текстовое поле в мувик и сделать как описано выше?
а ты то сам порбывал так сделать?
:mad: мол. чел, и них*** не работает-с!!!!!!!!
Ну естественно не пробовал ;-)
Это же тебе надо
Вот если ты скажешь, что ты попробовал и у тебя не получилось, вопрос станет интересным, и я с ним поковыряюсь
:) попробывал - не работает!!!!!!!!
Да уж... Извращаемся в полный рост
Держи:
var obj = new Object();
obj.th = this;
obj.onMouseDown = function()
{
delete this.th.onPress;
}
obj.onMouseUp = function()
{
this.th.onPress = function() {};
}
obj.onMouseMove = function()
{
if(this.th.hitTest(_root._xmouse, _root._ymouse, false))
{
Mouse.hide();
_root.cursor._visible = true;
}
else
{
Mouse.show();
_root.cursor._visible = false;
}
_root.cursor._x = _root._xmouse;
_root.cursor._y = _root._ymouse;
}
Mouse.addListener(obj);
this.onPress = function() {};
_root.attachMovie("cursor", "cursor", 99);
sergwizard
24.06.2004, 00:03
Вах, как красиво!
Конечно такое:
this.onMouseMove = function(){
if(mc.hitTest(_xmouse,_ymouse)){
Mouse.hide();
this.attachMovie("cursor","cursor",99);
cursor._x = _xmouse;
cursor._y = _ymouse;
}else{
Mouse.show();
cursor.removeMovieClip();
}
}
тоже работает, но не так корректно и красиво, как код Елё. Классно!
позвольте тоже поучаствовать
как обойтись без мувика:
Mouse.addListener(tf);//tf - текстовое поле
tf.onMouseMove=function(){
with(this){
if(_xmouse>0 && _ymouse>0 && _xmouse<_width && _ymouse<_height)
_parent.attachMovie("cursor","cursor",99,{_x:_parent._xmouse,_y:_parent._ymouse});
else _parent.cursor.removeMovieClip();
}
}
sergwizard
24.06.2004, 02:34
Да…, но в этом варианте присутствует тот же недостаток, что и в моем.
хм.... я вижу задал загадку....
вообщем то так - то ли лыжи не едут, толи я что то делаю не так...
короче над текстовым полем вида input курсор таки показываеться не тот что надо ... точнее тот что не надо!!!
если можно, для слабонервных, выложите хотя бы один работающий исходник!
примного благодарен заранее!!!
и еще, во избежании лишних вопросв, у меня мышка заменяеться файлом mouse котоый лежит на руте. заменяться он самым простым образом:
onClipEvent (mouseMove) {
_x=_root._xmouse;
_y=_root._ymouse;
updateAfterEvent();
Mouse.hide();
}
а когда мышка появляеться на область текстового поля она должна делать следующее:
_root.mouse.gotoAndStop("text")
сделано это, потому что у меня меняеться курсор при наведении на кнопку, при наведении на мыло ... и вот надо что бы менялся при наведениии на текстовое поле
sergwizard
24.06.2004, 15:40
Примерно так.
ну в принципе приблизительно то что надо , вот только меняеться над всем муви клипом где лежат инпутовые поля ..
но тут возникает вторая проблема : на всем остальном фильме перестает рабоать след код:
but.onRollOver = function () {
_root.mouse.gotoAndStop(1);
}
че делать?
Вставить каждый текст фиелд в пустой мувик или переопределять onPress только тогда когда курсор находится над тектовым полем
sergwizard
24.06.2004, 17:18
А кто тебе мешает сделать так?
2 Silin
У меня в твоем варианте остается текстовый курсор
Я по этому и делал переоперделение onPress от которого перестает работать onRollOver над кнопками
угу, назовем мой вариант 'дешевым'
sergwizard
24.06.2004, 21:50
Мне нравиться реакция Gas(a): только вопросы, и никакой похвалы или благодарности. :p
Для того чтобы узнавать, есть два способа: - задавать вопросы и пытаться самому на них ответить. Второй способ более продуктивный.
(S.Wizard)
Так что не за ради похвалы ;)
sergwizard
24.06.2004, 22:25
Мне не похвала, и не благодарность нужны, тем более, что в данном случае этого больше достоин ты. :) Мне нужна реакция, ответ на то, решена ли задача, поставленная спрашивающим? Или надо что-то другое?
Оригинал написал(а) sergwizard
Мне не похвала, и не благодарность нужны, тем более, что в данном случае этого больше достоин ты. :) Мне нужна реакция, ответ на то, решена ли задача, поставленная спрашивающим? Или надо что-то другое?
Чему ты удивляешься?
В первый раз что ли?
Сколько тут выложено исходников без ответа и привета. ;)
sergwizard
25.06.2004, 04:17
Да нет, не в первый раз с таким сталкиваюсь. Но каждый раз удивляюсь на таких людей. :o
А ты что здесь делаешь? Иди во Флейм. Там народ уже стол для тебя накрыл. :)
товарисчи. сорри за долго молчаение, вы реально решилми мою проблму, за что вам большое человечесоке спасиибо!!!!!!!!!!!!!!!!!!!!!!!!! :D :D :D
Штрек, спасибо огромное, очень помог твой код.:victory:
Да уж, код трехлетней давности (как и тема, собственно).
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.