Newsgroup: it.comp.lang.javascript
Titolo: codice javascript gmail

solo per curiosità
ma come si decodifica il codice javascript di gmail?
è assurdo?
non riesco a rintracciare l'evento onmouse per cliccare sul dettaglio
della mail.
si può fare qualcosa o mi devo rassegnare?

 della mail.
Utilizza Firebug o il Web Inspector di Chrome/Safari, a una prima
occhiata sembra che gli eventi siano delegati a un div che contiene la
tabella con la lista delle email ricevute (<div class="nH Cp">).
-- 
"When you have eliminated the impossible, whatever remains, however
improbable, must be the truth."


wrote:

nessun aiuto?

 nessun aiuto?
ZER0 ti ha risposto piu` di 4 ore fa...

 wrote:

vero vero
chiudo scusa
me lo ha scaricato solo ora

tabella con la lista delle email ricevute (<div class="nH Cp">).
io avevo ipotizzato anche che gli eventi fossero delegati ai TD
<TD class="yf xY ">
e come faccio a vedere quella classe?
ma quello che mi sembra strano è che se tento di simulare l'evento
click sulla pagina catturata tramite un web browser l'evento non viene
gestito.
eppure sono sicuro di stare sulla riga giusta.
la check box riesco a cliccarla, ma quando mi sposto con il mouse e
faccio click, non avviene nulla

 faccio click, non avviene nulla
Ah, okay, mi sembra di capire che tu voglia aggiungere un listener prima
del comportamento di default.
In questo caso:
var el = frames[3].document.getElementById(":oy");
el.addEventListener("mousedown", function(event) {
	alert("l'email non verrà aperta");
	event.stopPropagation();
	event.preventDefault();
});
Dove ":oy" è un ID di uno degli elementi TR che rappresenta un item
della lista delle mail ricevute.
Queste sono tutte cose che ho scoperto ora giusto smanettando un po' con
il Web Inspector, ti consiglio di usarlo e vedrai che raggiungerai
velocemente i tuoi scopi (che ammetto non mi sono ancora tutt'ora chiari).




ma la sezione "Event Listeners" è presente anche in firebug?
lo scopo che vorrei raggiungere è questo:
ciclare tutte le chats di gmail, 
aprirle una per una 
e salvarle in un file di testo
il tutto "aprendo"  gmail con un componente ocx di visual basic che si
chiama per l'appunto WebBrowser che permette di interagire sulla
pagina web
tutto qua


wrote:

ti dico quello che sto facendo e come lo sto facendo
lancio il webbrowser ( componente di vb6) e lancio la pagina di gmail
una volta caricata la pagina
rintraccio l'elemento
Dim body As MSHTML.HTMLBody
Dim doc As MSHTML.HTMLDocument
Set doc = web.Document.frames(3).Document
Set body = web.Document.frames(3).Document.body
Dim table As MSHTML.HTMLTable
Dim riga As MSHTML.HTMLTableRow
Dim col As MSHTML.HTMLTableCol
 
 
Set table = body.getElementsByTagName("table")(4)
 
 
Dim xs As HTMLSpanElement
Set xs = table.Document.getElementById(":nm")
'poi simulo il click
xs.click
non ricevo nessun errore ma nemmeno succede niente


questo in una pagina html funziona
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
	<title>Untitled</title>
</head>
<body>
<span id="k" onclick="Show()">dasdasdsa</span>
<input type="button" onclick="simulateClick();">
<script>
function Show()
{
	alert('prova');
}
 
function simulateClick()
{
if (document.createEvent) {
    // alert("FF");
    var evt = document.createEvent('MouseEvents');
    evt.initMouseEvent("click", true, true, window, 0, 0, 0, 0, 0,
false, false, false, false, 0, null);
		var el = document.getElementById("k"); 
  	el.dispatchEvent(evt);
} 
else if (document.createEventObject) {
    // alert("IE");
    var evt = document.createEventObject();
		var el = document.getElementById("k"); 
    el.fireEvent('onclick',evt)
}
}
</script>
</body>
</html>
questo nel webbrowser no
dove sbaglio?
Set xs = table.Document.getElementById(":nm")
Dim evt As Object
Set evt = doc.CreateEventObject()
xs.FireEvent "onclick", evt
xs.FireEvent "onkeydown", evt
xs.FireEvent "onkeyup", evt
xs.FireEvent "onkeypress", evt
xs.FireEvent "onclick"

 pagina web
In quel caso stai sfruttando lo stesso engine della versione di IE
installata sul tuo Windows. E con JavaScript, ha poco a che vedere, a
questo punto. Così come dimostrano anche i post che hai scritto
successivamente, in una pagina web ti funziona, mentre è usando quel
componente che hai dei problemi. È più materia da NG di VisualBasic /
Microsoft, a questo punto.




e lo so...
mannaggia, sto vicino alla soluzione e non riesco ad arrivarci.....
ma se volessi fare tutto in javascript si può fare o ci sono problemi
di permission?
il problema è che farlo esclusivamente in JavaScript non so proprio da
dove iniziare.
pensavo di caricare il contenuto della pagina in una iframe e poi
interagire con il DOM.
è giusto o ho scritto solo cavoltate?.....

 wrote:

manco così
non posso accedere a pagine che stanno in domini diversi.
che palle.....


http://feeds.punto-informatico.it/c/32288/f/438866/s/13ea032b/l/0Lpunto0Einformatico0Bit0C31238480CPI0CNews0Cfsf0Eliberate0Ejavascript0Egmail0Baspx/story01.htm



pensavo fosse un link "tecnico" ...
grazie comunque

 dove iniziare.
Se crei un'estensione per Firefox non hai problemi di SOP; e puoi fare
quel che ti serve.
Probabilmente anche in Chrome e Safari.
Se PhantomJS avesse supportato il salvataggio di dati su file system, ti
avrei consigliato quello. Purtroppo ancora non è stato implementato.
(
http://www.phantomjs.org/
)
Hope it helps.


Hope it helps.
Ci guardo
grazie

 grazie
Di niente, spero tu riesca ad ottenere quello che vuoi.



Grazie per la disponibilità Zero