Gabbay 0 Denunciar post Postado Dezembro 22, 2004 Amigos,Eu criei um código com função para sempre q passar o mouse sobre um objeto ele chama a função e faz o mesmo aumentar e qdo sai de cima do objeto ele volta ao seu tamanho original, mas isso eh animado não eh apenas aparecer grande, mas o problema é q eu fiz um código muito complicado q não está funcionando direito quando eu passo o mouse correndo sobre varios objetos.Alguem tem um código mais fácil para ceder a esse bom menino q não aprontou muitas coisas ruins este ano? ehehehe... Compartilhar este post Link para o post Compartilhar em outros sites
Chan 0 Denunciar post Postado Dezembro 22, 2004 papai noel pediu pra você ser um bom menino e postar o seu código.....as vezes é só arrumar um detalhezinho, e ele funciona....ou não...hhehehe Compartilhar este post Link para o post Compartilhar em outros sites
( ((phabyo)) ) 0 Denunciar post Postado Dezembro 22, 2004 papai noel pediu pra você ser um bom menino e postar o seu código.....as vezes é só arrumar um detalhezinho, e ele funciona....ou não...hhehehe hehehehehehe ...é verdade sem codigo ninguém adivinha ...fora isso ...http://www.imasters.com.br/forum/index.php...193&hl=rolloverte ajuda?AbraçosFabio Compartilhar este post Link para o post Compartilhar em outros sites
Gabbay 0 Denunciar post Postado Dezembro 22, 2004 Olha eu bem q falei, agora não vão me xingar!!! Essa eh a função q chamada do clipe, no caso a ordem da função são: nome do clipe, X, Y, largura, Altura e até q tamanho deve chegar na largura: on (rollOver){ _root.zoomObjeto ("cx1", 119, 130, 62.5, 62.5, 150);} código q fica no layer principal q faz o serviço: //===================================================================================================// FUNÇÃO PARA AUMENTAR / DIMINUIR O OBJETO ::::::::::::::::::::::::::::::::::::::::::::::::::::::::://=================================================================================================== function zoomObjeto (objeto, x, y, largura, altura, novoTamanho){ larguraOriginal = largura; alturaOrigianal = altura; meu_intervalo = setInterval(function () { if((_root._xmouse >= x) && (_root._xmouse <= x+largura) && (_root._ymouse >= y) && (_root._ymouse <= y+altura)){ if(eval("_root."+objeto)._width >= novoTamanho){ trace(">>> PARA >>> "+objeto); //clearInterval(meu_intervalo); return; } larguraOriginal += 5; alturaOrigianal += 5; eval("_root."+objeto)._width = larguraOriginal; eval("_root."+objeto)._height = alturaOrigianal; trace("++++ "+eval("_root."+objeto)._width +" >= "+ novoTamanho); } else { if(eval("_root."+objeto)._width == largura){ trace("<<< PARA <<< ("+eval("_root."+objeto)._width+" = "+larguraOriginal+") "+objeto); clearInterval(meu_intervalo); eval("_root."+objeto)._width = largura; eval("_root."+objeto)._height = altura; break; return; } larguraOriginal -= 5; alturaOrigianal -= 5; eval("_root."+objeto)._width = larguraOriginal; eval("_root."+objeto)._height = alturaOrigianal; trace("---- "+eval("_root."+objeto)._width +" >= "+ novoTamanho); } updateAfterEvent() }, 80); } espero q vcs tenham entendido! hehehe... nem me xinguem heim!! http://forum.imasters.com.br/public/style_emoticons/default/devil.gif Compartilhar este post Link para o post Compartilhar em outros sites
Chan 0 Denunciar post Postado Dezembro 22, 2004 qual o proiblema? Compartilhar este post Link para o post Compartilhar em outros sites
Gabbay 0 Denunciar post Postado Dezembro 27, 2004 O problema é q se eu passo o mouse rapido sobre os objetos ele da problema e todos os objetos diminuem até 1px e o loop não é iterrompido e não consigo resolver!!! segue abaixo o link para quem puder fazer o download e me dar uma mãozinha!! To ficando nervoso!! Download do FLA vle povo. :blink: Compartilhar este post Link para o post Compartilhar em outros sites
Chan 0 Denunciar post Postado Dezembro 27, 2004 isso acontece pq você tá usando o mesmo nome de intervalo pra todos os objetos....seria melhor se você usasse um enterframe pra cada objeto, ou um intervalo com nome diferente pra cada objeto Compartilhar este post Link para o post Compartilhar em outros sites
Gabbay 0 Denunciar post Postado Dezembro 27, 2004 Isso eu sei, mas não sei como fazer para criar intervalos dinamicamente tipo como se usa o eval() para manipular clipes. :( sabe como fazer?? Compartilhar este post Link para o post Compartilhar em outros sites
Chan 0 Denunciar post Postado Dezembro 27, 2004 um esquema bem simples pra você entender como funcioona....depois você adapta...e refina... for (i=0;i<num;i++) { _root["mc"+i].onRollOver = function () { this.newxscale = 120 this.newyscale = 120 } _root["mc"+i].onRollOut = function () { this.newxscale = 80 this.newyscale = 80 } _root["mc"+i].onEnterFrame = function () { this._xscale = this.newxscale + (this._xscale - this.newxscale)/1.8 this._yscale = this.newyscale + (this._xscale - this.newyscale)/1.8 }} eu não testei, mas deve funcionar Compartilhar este post Link para o post Compartilhar em outros sites
Gabbay 0 Denunciar post Postado Dezembro 27, 2004 Pelo que estou vendo nesse seu exemplo se eu o fizer terei que colar um bloco de programação para cada clipe e mudar na mão, mas eu gostaria de fazer uma função para reduzir o numeros de linhas de programação eu gosto de código limpo com o menor número de linhas possível, mania de programador. ehehehe...Tinha pensado em algo assim, mas prefiro montar uma função para ficar uma coisa mais profissa, entende? :wacko: Compartilhar este post Link para o post Compartilhar em outros sites
Chan 0 Denunciar post Postado Dezembro 27, 2004 tá loko???nomeie os movieclips como mc0 mc1 mc2 mc3 mc4 e joga só esse código na raiz....não precisa criar codigo nenhum mais........se você tiver 20 mcs, é só mudar o numero da variavel "num" Compartilhar este post Link para o post Compartilhar em outros sites
Gabbay 0 Denunciar post Postado Dezembro 27, 2004 Esse seu códio só mostra o clipe grande e eu gostaria q ele crescesse e diminuisse animado entendeu?? Como posso fazer em cima do seu exemplo? Compartilhar este post Link para o post Compartilhar em outros sites
Gabbay 0 Denunciar post Postado Dezembro 27, 2004 me ajude em como fazer para animar ... pleaseeee Compartilhar este post Link para o post Compartilhar em outros sites
Chan 0 Denunciar post Postado Dezembro 27, 2004 faça 5 movieclips e instancie-os como mc0 mc1 mc2 mc3 mc4, tudo na raiz....jogue esse código....e pronto....acho que é isso......qual o problema?? Compartilhar este post Link para o post Compartilhar em outros sites
Chan 0 Denunciar post Postado Dezembro 27, 2004 coloque o divisor que está como 1.8, diminua para 1.2, 1.1, sei lah...vai testando.... eu fiz um movieclip, arttachei usando o attachMovie dentro do for mesmo, usando o i pra nomear como mc0, mc1 e por ae vai...posicionar no palco.....e animar....não tem erro... num = 5for (i=0;i<num;i++) { _root.attachMovie('mc','mc'+i, i) _root["mc"+i]._x = i*_root["mc"+i]._width _root["mc"+i].onRollOver = function () { this.newxscale = 120 this.newyscale = 120 } _root["mc"+i].onRollOut = function () { this.newxscale = 80 this.newyscale = 80 } _root["mc"+i].onEnterFrame = function () { this._xscale = this.newxscale + (this._xscale - this.newxscale)/1.2 this._yscale = this.newyscale + (this._xscale - this.newyscale)/1.2 }} Compartilhar este post Link para o post Compartilhar em outros sites