Punto informatico Network
Login Esegui login | Non sei registrato? Iscriviti ora (è gratuito!)
Username: Password:
  • Annuncio Pubblicitario

javascript Messenger Plus!

Il forum per tutti i developer. Leggere attentamente il regolamento di sezione prima di postare.

javascript Messenger Plus!

Messaggioda dani92 » ven ott 26, 2007 5:29 pm

Sto realizzando uno script per Messenger Plus! che dovrebbe cambiare automaticamente il colore del testo ogni 500 millisecondi (mezzo secondo).
Per ora sono arrivato a questo punto:

Codice: Seleziona tutto
function OnEvent_Initialize(MessengerStart)
{
nome=Messenger.MyName
col=0;

  inizia()
 
}


function inizia()
{
colora()
}



function colora()
{
Messenger.MyName = "[c=" + col + "]" + nome + "[/c]";
  col=col+1;
 
  if (col == 67)
  {
    col=0;
  }
 
}


A questo punto arriva la parte più importante: un timer che mi permetta di aspettare 500 ms prima di rieseguire la funzione colora().
Potete suggerirmi una soluzione? Grazie!
Ho un cervello, non sono analfabeta e non sento l'irrefrenabile bisogno di deturpare la mia lingua madre con K ed abbreviazioni
Avatar utente
dani92
Aficionado
Aficionado
 
Messaggi: 43
Iscritto il: mar lug 03, 2007 4:43 pm
Località: Provincia di Pisa

Messaggioda ImSoTech » ven ott 26, 2007 6:24 pm

Ciao, scusa ma perché hai fatto una funzione che richiama un'altra funzione?So che il programma è piccolo quindi non ce differenza se metterlo o no però è meno efficiente, piu pesante.
Comunque apparte il fatto che non so se ho detto cavolate o no, guarda se ti può essere utile questo:

To call the function `` Snork() '', approx 10 seconds
after the function `` Moomin() '', you would do this:

Moomin()
setTimeout('Snork()',10000)


function OnEvent_Initialize(MessengerStart)
{
nome=Messenger.MyName
col=0;

inizia()

}


function inizia()
{
colora()
setTimeout('colora()',500)
}



function colora()
{
Messenger.MyName = "[c=" + col + "]" + nome + "[/c]";
col=col+1;

if (col == 67)
{
col=0;
}

}

prova a scriverlo così, premetto che sono alle prime armi e che nn capisco nulla di javascript ma ho fatto un po' di C++ ed è più o meno simile.
Poi scusa la mia ignoranza ma non ci va messo un ciclo infinito nella funzione OnEvent_Initialize?
Avatar utente
ImSoTech
Bronze Member
Bronze Member
 
Messaggi: 511
Iscritto il: gio feb 02, 2006 8:00 pm

Messaggioda dani92 » ven ott 26, 2007 6:55 pm

ImSoTech ha scritto:Ciao, scusa ma perché hai fatto una funzione che richiama un'altra funzione?So che il programma è piccolo quindi non ce differenza se metterlo o no però è meno efficiente, piu pesante.


Erano i resti di prove precedenti [;)]

ImSoTech ha scritto:Comunque apparte il fatto che non so se ho detto cavolate o no, guarda se ti può essere utile questo:

To call the function `` Snork() '', approx 10 seconds
after the function `` Moomin() '', you would do this:

Moomin()
setTimeout('Snork()',10000)


function OnEvent_Initialize(MessengerStart)
{
nome=Messenger.MyName
col=0;

inizia()

}


function inizia()
{
colora()
setTimeout('colora()',500)
}



function colora()
{
Messenger.MyName = "[c=" + col + "]" + nome + "[/c]";
col=col+1;

if (col == 67)
{
col=0;
}

}

prova a scriverlo così, premetto che sono alle prime armi e che nn capisco nulla di javascript ma ho fatto un po' di C++ ed è più o meno simile.
Poi scusa la mia ignoranza ma non ci va messo un ciclo infinito nella funzione OnEvent_Initialize?


Avevo già provato ma sembra che il setTimeout non venga riconosciuto, forse perché fa parte di "window" e quindi può essere usato solo nell'html... boh!

Il ciclo infinito? Diciamo che si pianta tutto, anche se in realtà msn messenger fa apparire circa 20 000 000 messaggi tutti uguali che dicono che "non è possibile modificare il nome, riprovare tra qualche momento".

Ciao e grazie per la risposta!
Ho un cervello, non sono analfabeta e non sento l'irrefrenabile bisogno di deturpare la mia lingua madre con K ed abbreviazioni
Avatar utente
dani92
Aficionado
Aficionado
 
Messaggi: 43
Iscritto il: mar lug 03, 2007 4:43 pm
Località: Provincia di Pisa


Messaggioda ImSoTech » ven ott 26, 2007 7:03 pm

Ah mi dispiace non esserti stato di aiuto, vedrai che qualcuno che ci capisce più di me arriverà :D
Avatar utente
ImSoTech
Bronze Member
Bronze Member
 
Messaggi: 511
Iscritto il: gio feb 02, 2006 8:00 pm

Messaggioda manu187 » dom ott 28, 2007 9:18 pm

devi usare Math.PI viene usato per gli orologi analogici
Avatar utente
manu187
Senior Member
Senior Member
 
Messaggi: 181
Iscritto il: dom ott 28, 2007 8:06 pm

Messaggioda dani92 » lun ott 29, 2007 4:36 pm

manu187 ha scritto:devi usare Math.PI viene usato per gli orologi analogici


Scusami ma non riesco proprio a capire l'utilità del Pigreco...
Se qualcuno potesse spiegarmelo... grazie!

P.S. Non conosco benissimo javascript, io programmo in VB.NET
Ho un cervello, non sono analfabeta e non sento l'irrefrenabile bisogno di deturpare la mia lingua madre con K ed abbreviazioni
Avatar utente
dani92
Aficionado
Aficionado
 
Messaggi: 43
Iscritto il: mar lug 03, 2007 4:43 pm
Località: Provincia di Pisa

Messaggioda manu187 » mar ott 30, 2007 1:01 pm

Codice: Seleziona tutto
sec = -Math.PI/2+time.getSeconds()*Math.PI/30;
   min = -Math.PI/2+Math.PI*time.getMinutes()/30;
   hr = -Math.PI/2+Math.PI*time.getHours()/6+Math.PI*parseInt(time.getMinutes())/360;
ecco il perché [:)]
Avatar utente
manu187
Senior Member
Senior Member
 
Messaggi: 181
Iscritto il: dom ott 28, 2007 8:06 pm

Messaggioda dani92 » sab nov 03, 2007 1:30 pm

manu187 ha scritto:
Codice: Seleziona tutto
sec = -Math.PI/2+time.getSeconds()*Math.PI/30;
   min = -Math.PI/2+Math.PI*time.getMinutes()/30;
   hr = -Math.PI/2+Math.PI*time.getHours()/6+Math.PI*parseInt(time.getMinutes())/360;
ecco il perché [:)]


Ho provato in vari modi seguendo il tuo suggerimento, ma Messenger fa davvero schifo perché non riconosce time.getHours() & company.
uso questo:
today = new Date()
nn=today.getSeconds()

Ciao!
Ho un cervello, non sono analfabeta e non sento l'irrefrenabile bisogno di deturpare la mia lingua madre con K ed abbreviazioni
Avatar utente
dani92
Aficionado
Aficionado
 
Messaggi: 43
Iscritto il: mar lug 03, 2007 4:43 pm
Località: Provincia di Pisa

Messaggioda dani92 » sab nov 03, 2007 2:17 pm

niente...
non so proprio come fare!
Devo cercare di risolvere con setTimeout...
so che fa parte di window. window di cosa fa parte?
Ciao!
Ho un cervello, non sono analfabeta e non sento l'irrefrenabile bisogno di deturpare la mia lingua madre con K ed abbreviazioni
Avatar utente
dani92
Aficionado
Aficionado
 
Messaggi: 43
Iscritto il: mar lug 03, 2007 4:43 pm
Località: Provincia di Pisa

Messaggioda Gainder » mer nov 07, 2007 6:07 pm

window è un oggetto, e viene creato dal browser web.
Nel tuo caso da quanto ho capito stai scivendo uno script per Messenger Plus, quindi non troverai l'oggetto window ma altri oggetti predefiniti.
Avatar utente
Gainder
Aficionado
Aficionado
 
Messaggi: 146
Iscritto il: sab mag 31, 2003 1:54 pm
Località: Campania


Torna a Programmazione

Chi c’è in linea

Visitano il forum: Nessuno e 8 ospiti

Powered by phpBB © 2002, 2005, 2007, 2008 phpBB Group
Traduzione Italiana phpBB.it

megalab.it: testata telematica quotidiana registrata al Tribunale di Cosenza n. 22/09 del 13.08.2009, editore Master New Media S.r.l.; © Copyright 2008 Master New Media S.r.l. a socio unico - P.I. 02947530784. GRUPPO EDIZIONI MASTER Spa Tutti i diritti sono riservati. Per la pubblicità: Master Advertising