Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2006
    Messaggi
    11

    Javascript non funziona correttamente in Joomla

    Ciao,
    non sono molto esperto perciò perdonatemi se dico castronerie.

    ho il seguente problema, una Gallery di Joomla usa un javascript per chiamare un popup e mostrare le immagini intere.

    ma quando il popup esce fuori, non ha nessuna proprietà (titolo finestra, url è about:blank, lo sfondo è bianco etc) nonostante mostri l'immagine con successo

    ecco una cattura:

    a seguire la parte di codice che CREDO chiamo il popup e dovrebbe prendersi dei dettagli:

    NOTA ho già dovuto mettere le mani su questo codice eliminando alcuni spazi che il SEF di Joomla interpretava come da correggere, quindi mi xcambiava l'indirizzo e le immagini non si vedevano... forse succede qualcosa di simile con le altre proprietà?

    codice:
    $htmltext2 .= "<script language=\"JavaScript\">";
    
    	
    
    					$htmltext2 .= "function pgpopup(pgimagefile,pgimagetitle,pgimagedescription) {\n";
    
    					$htmltext2 .= "var newWindow = window.open(\"\",\"newWindow\",\"height=" . ($tabparams["pgmaxheight"]+$dparm[2]) . ",width=" . ($tabparams["pgmaxwidth"]+$dparm[3]) . ",resizable=yes, scrollbars=yes, toolbar=no " . "\" );\n";
    
    					$htmltext2 .= "var imageurl = \"<img src= \"+ pgimagefile + \">\";\n";
    
    					$htmltext2 .= "newWindow.document.open();";
    
    					$htmltext2 .= "newWindow.document.writeln(\"<div align='center' >\");\n";
    
    					$htmltext2 .= "newWindow.document.writeln(\"<title>Profile Gallery Image: \"+ pgimagetitle + \"</title>\");\n";
    
    					$htmltext2 .= "newWindow.document.writeln(imageurl);\n";
    
    					$htmltext2 .= "newWindow.document.writeln(\"
    \");";
    
    					$htmltext2 .= "newWindow.document.writeln(pgimagedescription);\n";
    
    					$htmltext2 .= "newWindow.document.writeln(\"</div>\");\n";
    
    					$htmltext2 .= "newWindow.document.close();\n";
    
    					$htmltext2 .= "}\n";
    
    					$htmltext2 .= "</script>";
    
    					break;
    vedete qualcosa di sbagliato?

    grazie!

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,133
    Secondo me il "jomilesco" lo capiscono in cms, fai spostare la discussione dal moderatore di sezione, se vuoi restare qui estrapola il javascript senza codice joomla, altrimenti devi sperare che qualcuno legga il tuo post e che conosca entrambi.
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  3. #3
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    che l' url sia about blank e' normale: non apri un documento esistente, lo crei al volo
    e male:
    non c'e' un <html>, un <head>, un <body>
    hai un <title> completamente fuori posto
    in un div centrato come si centrava negli anni 90

    a questo punto se hai conoscenze base di html dovresti essere in grado di sistemarlo da solo

    ciao

  4. #4
    Utente di HTML.it
    Registrato dal
    Feb 2006
    Messaggi
    11
    @andrea grazie per il consiglio, ma credo sia più attinente al javascript... credo almeno!

    @Xinod sono perfettamente d'accordo che il codice in questione sia crap, e pensa che è un plugin di Joomla persino postato nel sito ufficiale e molto famoso (Community Builder Gallery)!!!

    Il codice per creare o richiamare una popup lo conosco, è che nel caso in questione non riesco ad integrarlo correttamente con tutti i parametri che si richiama!

    Ho fatto delle prove, ricevendo errori di sintassi o nel migliore dei casi, non ottenendo l'effetto sperato.

    Mi sono quindi presto reso conto che stavo inserendo procedendo per tentativi e dopo alcune ore ho pensato che fosse meglio chiedere ai Pro

    Il problema credo sia principalmente di sintassi (come ho scritto inizialmente non mi vedeva nemmeno le immagini, ma cambiando
    codice:
    $htmltext2 .= "var imageurl = \ "<img src= \" + pgimagefile + \">\";\n";
    in
    codice:
    $htmltext2 .= "var imageurl = \"<img src= \"+ pgimagefile + \">\";\n";
    ovvero togliendo due spazi, il problema è stato risolto (indizio trovato su un forum)

    Quindi con una verifica sintattica da parte di un esperto magari risolvo, ma se hai un consiglio più efficace, radicale o più compliant da darmi, ne sono ben felice...

  5. #5
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    scusa ma... se hai capito che da
    $htmltext2 .= "newWindow.document.open();";
    in poi stai scrivendo nella nuova finestra

    cosi' come scrivi correttamente un <title> (anche se fuori posto)
    $htmltext2 .= "newWindow.document.writeln(\"<title>Profile Gallery Image: \"+ pgimagetitle + \"</title>\");\n";

    o correttamente l' immagine
    $htmltext2 .= "newWindow.document.writeln(\"<img src= \"+ pgimagefile + \">\");\n";

    non ci credo che tu non riesca a seguire la stessa sintassi per scrivere un html sensato, con i tag al posto giusto, stili, etc, come fosse una paginetta html qualsiasi

  6. #6
    Utente di HTML.it
    Registrato dal
    Feb 2006
    Messaggi
    11
    Però ad esempio vedi che il title non glielo prende?

    anche se teoricamente gli passa
    codice:
    $htmltext2 .= "newWindow.document.writeln(\"<title>Profile Gallery Image: \"+ pgimagetitle + \"</title>\");\n";
    dallo screenshot puoi vedere che la finestra è Senza titolo.

    Immagino quindi che non posso prendere ad esempio i parametri già presenti, dato che non funzionano, sbaglio?

    Ti assicuro che la mia non è pigrizia, ma imperizia

  7. #7
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    Originariamente inviato da bWash
    Immagino quindi che non posso prendere ad esempio i parametri già presenti, dato che non funzionano, sbaglio?
    ma per esempio scrivi correttamente l' immagine prendendo l' indirizzo passato
    quindi sbagli

    comunque se cosi' non scrive il titolo
    codice:
    $htmltext2 .= "<script language=\"JavaScript\">";
    
    $htmltext2 .= "function pgpopup(pgimagefile,pgimagetitle,pgimagedescription) {\n";
    
    $htmltext2 .= "var newWindow = window.open(\"\",\"newWindow\",\"height=" . ($tabparams["pgmaxheight"]+$dparm[2]) . ",width=" . ($tabparams["pgmaxwidth"]+$dparm[3]) . ",resizable=yes, scrollbars=yes, toolbar=no " . "\" );\n";
    
    $htmltext2 .= "var imageurl = \"<img src= \"+ pgimagefile + \">\";\n";
    
    $htmltext2 .= "newWindow.document.open();";
    
    $htmltext2 .= "newWindow.document.writeln(\"<html><head>\");\n";
    
    $htmltext2 .= "newWindow.document.writeln(\"<title>Profile Gallery Image: \"+ pgimagetitle + \"</title>\");\n";
    
    $htmltext2 .= "newWindow.document.writeln(\"</head><body><div>\");\n";
    
    $htmltext2 .= "newWindow.document.writeln(imageurl);\n";
    
    $htmltext2 .= "newWindow.document.writeln(\"
    \");";
    
    $htmltext2 .= "newWindow.document.writeln(pgimagedescription);\n";
    
    $htmltext2 .= "newWindow.document.writeln(\"</div></body></html>\");\n";
    
    $htmltext2 .= "newWindow.document.close();\n";
    
    $htmltext2 .= "}\n";
    vuol dire che le impostazioni del tuo browser non permettono di settare il titolo per popup con contenuti generati dinamicamente.

  8. #8
    Utente di HTML.it
    Registrato dal
    Feb 2006
    Messaggi
    11
    ti amo.

    effettivamente chrome non accetta alcuni parametri (tipo il title, bgcolor, etc.) quindi continua a vedersi male, mentre su explorer e firefox funziona!

    appena finisco di implementare posto uno screenshot del risultato!

  9. #9
    Utente di HTML.it
    Registrato dal
    Feb 2006
    Messaggi
    11
    Risolto!

    come dicevo Chrome non prende il Title, ma tutti gli altri parametri si: ecco l'immagine con IE.



    Grazie dell'aiuto!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.