Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Tastiera gaming MSI GK600 TKL: switch hot-swap, display LCD e tre modalità wireless
Tastiera gaming MSI GK600 TKL: switch hot-swap, display LCD e tre modalità wireless
MSI FORGE GK600 TKL WIRELESS: switch lineari hot-swap, tripla connettività, display LCD e 5 strati di fonoassorbimento. Ottima in gaming, a 79,99 euro
DJI Osmo Pocket 4: la gimbal camera tascabile cresce e ha nuovi controlli fisici
DJI Osmo Pocket 4: la gimbal camera tascabile cresce e ha nuovi controlli fisici
DJI porta un importante aggiornamento alla sua linea di gimbal camera tascabili con Osmo Pocket 4: sensore CMOS da 1 pollice rinnovato, gamma dinamica a 14 stop, profilo colore D-Log a 10 bit, slow motion a 4K/240fps e 107 GB di archiviazione integrata. Un prodotto pensato per i creator avanzati, ma che convince anche per l'uso quotidiano
Sony INZONE H6 Air: il primo headset open-back di Sony per giocatori
Sony INZONE H6 Air: il primo headset open-back di Sony per giocatori
Il primo headset open-back della linea INZONE arriva a 200 euro con driver derivati dalle cuffie da studio MDR-MV1 e un peso record di soli 199 grammi
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 08-11-2007, 23:18   #1
wingman87
Senior Member
 
Iscritto dal: Nov 2005
Messaggi: 2789
[JS] Prelevare codice html di un frame esterno al dominio

Forse il titolo non è chiarissimo, quindi spiego più in dettaglio il mio problema.
Ho una pagina web contenente un frameset composto da due frame, uno in alto e l'altro che copre tutto il resto della pagina. Il frame in basso non punta a nulla, quello in alto punta a un'altra pagina web che ho scritto io con un javascript che avendo un vettore di indirizzi li apre nel frame sottostante uno ad uno ad intervalli regolari. Quello che ho bisogno di fare è fermare questo flusso continuo nel caso in cui all'interno del frame di basso ci siano particolari parole o frasi chiave. Per far questo avevo pensato di leggere il codice html di quel frame e poi usare un semplice indexOf per cercare le parole chiave. Quello che non riesco a fare è prelevare il codice html. Come devo fare?
Grazie!
wingman87 è offline   Rispondi citando il messaggio o parte di esso
Old 09-11-2007, 23:52   #2
wingman87
Senior Member
 
Iscritto dal: Nov 2005
Messaggi: 2789
Mi è stato detto che non è possibile fare ciò che chiedo, non è che però esiste un qualche trucchetto per aggirare il problema? Io non uso js da tanto e non mi viene in mente nessuna soluzione...
wingman87 è offline   Rispondi citando il messaggio o parte di esso
Old 10-11-2007, 10:05   #3
Leron
Senior Member
 
L'Avatar di Leron
 
Iscritto dal: Aug 2002
Città: Trento
Messaggi: 40877
php?
__________________
http://www.trentografica.itGrafica e Fotografia a Trento
Leron è offline   Rispondi citando il messaggio o parte di esso
Old 10-11-2007, 10:32   #4
kk3z
Senior Member
 
L'Avatar di kk3z
 
Iscritto dal: Nov 2003
Messaggi: 980
Basandomi su quello che mi dice firebug, ho tirato fuori questo codice
Codice:
var iframes = iframe_in cui_sei.ownerDocument.getElementsByTagName("iframe");
var iframe_che_ti_serve = iframes[1];

if (iframe_che_ti_serve.contentDocument.body.innerHTML.indexOf("parola chiave") != -1)
{
   //Trovato
}
Non è testato.
kk3z è offline   Rispondi citando il messaggio o parte di esso
Old 10-11-2007, 13:05   #5
wingman87
Senior Member
 
Iscritto dal: Nov 2005
Messaggi: 2789
Quote:
Originariamente inviato da Leron Guarda i messaggi
php?
Non posso, devo usare solo pagine statiche, devo farle lanciare ad utenti che non usano un webserver.
Quote:
Originariamente inviato da kk3z Guarda i messaggi
Basandomi su quello che mi dice firebug, ho tirato fuori questo codice
Codice:
var iframes = iframe_in cui_sei.ownerDocument.getElementsByTagName("iframe");
var iframe_che_ti_serve = iframes[1];

if (iframe_che_ti_serve.contentDocument.body.innerHTML.indexOf("parola chiave") != -1)
{
   //Trovato
}
Non è testato.
Ho provato però non so come tradurre iframe_in cui_sei, con il nome non va, con document neanche, non so, scusa l'ignoranza...
EDIT: ho provato con top.document.getElementsByTagName("frame"); e almeno va avanti, in effetti frames vale 2, però si blocca all'istruzione di ricerca che è quella fondamentale...

Ultima modifica di wingman87 : 10-11-2007 alle 13:09.
wingman87 è offline   Rispondi citando il messaggio o parte di esso
Old 10-11-2007, 16:28   #6
MEMon
Senior Member
 
Iscritto dal: Dec 2002
Messaggi: 3359
Quote:
Originariamente inviato da kk3z Guarda i messaggi
Basandomi su quello che mi dice firebug, ho tirato fuori questo codice
Codice:
var iframes = iframe_in cui_sei.ownerDocument.getElementsByTagName("iframe");
var iframe_che_ti_serve = iframes[1];

if (iframe_che_ti_serve.contentDocument.body.innerHTML.indexOf("parola chiave") != -1)
{
   //Trovato
}
Non è testato.
Se l'iframe contiene una pagina esterna dal tuo dominio non lo puoi fare, in quanto avrai un "permesso negato".
MEMon è offline   Rispondi citando il messaggio o parte di esso
Old 12-11-2007, 15:08   #7
wingman87
Senior Member
 
Iscritto dal: Nov 2005
Messaggi: 2789
Ma dove trovo la documentazione ufficiale? Magari si trova qualche scappatoia..
wingman87 è offline   Rispondi citando il messaggio o parte di esso
Old 12-11-2007, 22:25   #8
BlackAuron
Member
 
Iscritto dal: May 2006
Messaggi: 86
forse ti conviene dare una ripassata alla cross domain policy di javascript
Nel caso in cui l'iframe sia esterno al dominio dal quale esegui la chiamata, allora non otterrai mai i permessi per leggere l'html della pagina.
L'unica cosa che puoi fare, è appoggiarti ad un sito esterno, come può essere www.palary.com, che, una volta passata una query creata a dovere, ti ritorna un oggetto json, che puoi richiamare attraverso uno <script src...>
BlackAuron è offline   Rispondi citando il messaggio o parte di esso
Old 12-11-2007, 23:13   #9
wingman87
Senior Member
 
Iscritto dal: Nov 2005
Messaggi: 2789
Mi puoi spiegare di che si tratta? Ad ogni modo più che una ripassata avrei proprio bisogno di un'infarinatura, non ho mai usato javascript quello che ho fatto finora l'ho fatto a logica vedendo un po' di esempi per capire come si usava, solo che non so dove trovare la documentazione ufficiale, ho trovato questo:
http://www.w3schools.com/jsref/default.asp
ma di ufficiale non c'è nulla?
Il link che hai postato non mi funziona.
wingman87 è offline   Rispondi citando il messaggio o parte di esso
Old 12-11-2007, 23:26   #10
BlackAuron
Member
 
Iscritto dal: May 2006
Messaggi: 86
si, ho notato ora che palary è stato abbattuto... spero sia una cosa temporanea In ogni caso, per quanto riguarda il js basta che ti compri una guida in libreria ( se non sbaglio, la "javascript bible" dovrebbe essere fatta piuttosto bene).
Per quanto riguarda invece json e le domain restrictions, prendi come punto di partenza wikipedia e vedi che riesci ad ottenere ( di solito in fondo alla pagina, tra i link, trovi ottime risorse).
Ti indirizzerei a qualcosa di più preciso, ma sinceramente non avrei idea di dove trovare risorse decenti a riguardo: personalmente mi sono fatto un collage di roba reperita dalla rete, e me lo sono assimilato col tempo.
BlackAuron è offline   Rispondi citando il messaggio o parte di esso
Old 12-11-2007, 23:33   #11
wingman87
Senior Member
 
Iscritto dal: Nov 2005
Messaggi: 2789
Ok, ci proverò, grazie. Comunque mi sembra strano che non ci sia nulla di ufficiale...
wingman87 è offline   Rispondi citando il messaggio o parte di esso
Old 12-11-2007, 23:49   #12
BlackAuron
Member
 
Iscritto dal: May 2006
Messaggi: 86
http://www.w3schools.com/js/default.asp
le linee guida qua le puoi trovare, e non credo ci sia nulla di più ufficiale. Ma non mi pare che sia esattamente una "guida"...
BlackAuron è offline   Rispondi citando il messaggio o parte di esso
Old 12-11-2007, 23:54   #13
wingman87
Senior Member
 
Iscritto dal: Nov 2005
Messaggi: 2789
Quello che mi serve in effetti non è una guida, so già programmare in altri linguaggi e non trovo js difficile da imparare, anzi.. è piuttosto un riferimento tipo l'MSDN del .NET o il reference ufficiale del Java che trattano tutto senza tralasciare nulla e in modo approfondito. Ad esempio sta storia del fatto che non si può accedere a un frame con contenuto esterno l'ho scoperta provando e poi leggendo esperienze di altra gente su internet ma non l'ho ancora trovato scritto in modo ufficiale da nessuna parte.
wingman87 è offline   Rispondi citando il messaggio o parte di esso
Old 13-11-2007, 10:02   #14
BlackAuron
Member
 
Iscritto dal: May 2006
Messaggi: 86
Il punto è che le restrizioni è il browser a dettarle, quindi difficilmente troverai qualcosa di ufficiale a riguardo nelle guide di js
Piuttosto, se nella pagina caricata nell'iframe puoi inserire del js, allora hai qualche chance di ottenerne i sorgenti.
BlackAuron è offline   Rispondi citando il messaggio o parte di esso
Old 13-11-2007, 10:57   #15
wingman87
Senior Member
 
Iscritto dal: Nov 2005
Messaggi: 2789
Capisco.. però io ho avuto un altro problema tempo fa, non riuscivo a chiudere le schede di firefox con javascript, ma poi ho scoperto che il problema era aggirabile cambiando una proprietà del browser in about:config. Magari c'è un modo per disattivare anche questa restrizione.
Quote:
Piuttosto, se nella pagina caricata nell'iframe puoi inserire del js, allora hai qualche chance di ottenerne i sorgenti.
Le pagine non sono mie, sono cose tipo google, yahoo, eccetera..
wingman87 è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Tastiera gaming MSI GK600 TKL: switch hot-swap, display LCD e tre modalità wireless Tastiera gaming MSI GK600 TKL: switch hot-swap, ...
DJI Osmo Pocket 4: la gimbal camera tascabile cresce e ha nuovi controlli fisici DJI Osmo Pocket 4: la gimbal camera tascabile cr...
Sony INZONE H6 Air: il primo headset open-back di Sony per giocatori Sony INZONE H6 Air: il primo headset open-back d...
Nutanix cambia pelle: dall’iperconvergenza alla piattaforma full stack per cloud ibrido e IA Nutanix cambia pelle: dall’iperconvergenza alla ...
Recensione Xiaomi Pad 8 Pro: potenza bruta e HyperOS 3 per sfidare la fascia alta Recensione Xiaomi Pad 8 Pro: potenza bruta e Hyp...
Annunciata la tuta di volo di Vast che s...
Vast presenta il nuovo Large Docking Ada...
Una denuncia getta ombre sulle batterie ...
DJI Avata 2 Fly Smart Combo a 526€: il d...
Alla guida della nuova auto elettrica ci...
GeForce RTX 3060 12 GB a giugno di nuovo...
Apple Music sarà sponsor ufficiale di Po...
The Mandalorian & Grogu: trailer fin...
Fedeltà record: Apple blinda gli utenti,...
Volkswagen ID.3 Neo: fino a 630 km di au...
GPU-Z mette i dati personali a rischio? ...
La PS6 potrebbe essere retrocompatibile ...
Amazfit Cheetah 2 Pro arriva in Italia: ...
Duolingo ammette l'errore dopo un anno: ...
Samsung Galaxy Tab S10 Lite a 249€: il t...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 00:00.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v