Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    Sito web...tutto usando AJAX

    Dopo aver cominciato a studiare questa tecnologia, mi sono cominciato a chiedere perchè non viene fatto il sito interamente con la tecnologia AJAX..

    come avrete notato, i bellissimi menu a sinistra di quasi tutti i siti una volta cliccati fanno ricaricare tutto...effetto che personalmente odio, di conseguenza mi è venuto in mente di far funzionare l'intero sito con AJAX...usando XML e XSL e ovviamente i CSS...è una buona idea?
    potrei dover aggiungere qualcosa in php, ma non ne sono certo.

    Allora vi pongo le seguenti domande che mi frullano in testa...

    1)Con il php, posso nascondere i miei script Javascript (usando le sessioni e qualche trucchetto...già ci ho provato)...è una buona idea?(Non prendetemi per uno che non condivide i suoi script...è che non voglio condividere le mie porcate XD...prefersco fornire io stesso librerie di script completi e con documentazione(cosa che faccio perfino volentieri)) è una buona idea?

    2)Come invio dati POST (e anche GET...anche se a quello si può ovviare) da pagina a pagina, considerando appunto, che vorrei costruire il sito tutto in AJAX? non ho capito se il metodo send() può essermi utile...oppure posso rinunciare al post? (beh ora che ci penso posso sincronizzare le request, così facendo risulterebbe facile passare valori...userei delle variabili javascript :P )

    3)I file php vengono parsati prima di arrivare all' XMLHttpRequest object?Cioè...ricevo una pagina HTML con i dati "creati" dal php secondo i miei script?(questa credo abbia risposta SI XD)

    4)Svantaggi di fare un sito Web usando solo AJAX, fuorchè l'incompatibilità?

    Grazie a tutti...

  2. #2
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    se sei interessato all' uso massiccio di ajax, preoccupati prima di tutto di salvaguardare le funzionalita' tipiche di una normale navigazione (pulsanti avanti/indietro del browser, bookmarking...) oltre che, ovviamente, a garantire la stessa anche a javascript disattivato

  3. #3
    Originariamente inviato da Xinod
    se sei interessato all' uso massiccio di ajax, preoccupati prima di tutto di salvaguardare le funzionalita' tipiche di una normale navigazione (pulsanti avanti/indietro del browser, bookmarking...) oltre che, ovviamente, a garantire la stessa anche a javascript disattivato
    Simulare i pulsanti avanti e indietro dovrei riuscirci...

    Il sito potrà girare anche senza javascript, comunque sarà limitato...si potranno leggere i contenuti ma non si potrà interagirci in modi che il javascript consente, cmq punto a un'utenza che deve avere il javascript attivo...preferisco che non navighino altrimenti

    Un'ultima cosa, mi è sorta una problematica...stavo creandomi una libreria per semplificarmi l'utilizzo dell'XMLHttpRequest quando sono incappato nel seguente problema

    (Ci troviamo all'interno di una funzione per creare un'istanza di una classe...sto creando la proprietà OBJ)
    codice:
    	this.obj=null;
    	try {
    		// Firefox, Opera 8.0+, Safari
    		this.obj=new XMLHttpRequest();
    	} catch (e) {
    		// Internet Explorer
    		try {
    			this.obj=new ActiveXObject("Msxml2.XMLHTTP");
    		} catch (e) {
    			this.obj=new ActiveXObject("Microsoft.XMLHTTP");
    		}
    	}
    Fin qui ok...il problema sorge quando

    codice:
    	this.load=function(tipo,surl,tosend,async) {
    		if (this.obj==null) {
    			alert("Your browser doesn't support XMLHTTP");
    			return false;
    		}
    		this.obj.onreadystatechange=this.ChangePage;
    		try {
    			this.obj.open(tipo,surl,async);
    			this.obj.send(tosend);
    			return true;
    		} catch(e) {
    			alert("Problems in loading the page");
    			return false;
    		}
    		return true;
    	}
    L'errore in console di firefox è "obj has no properties"...quindi deduco che non erediti le proprietà di XMLHttpRequest()...c'è soluzione?o devo per forza dichiarare tale oggetto come variabile(e quindi rinunciare a fare la libreria Object Oriented...o comunque, la devo fare diversamente (dovrei dichiarare due variabili invece di una per ogni volta che uso la libreria...) o cmq in metodi meno belli di come avrei voluto...

    grazie per l'aiuto

  4. #4
    Frontend samurai L'avatar di fcaldera
    Registrato dal
    Feb 2003
    Messaggi
    12,924
    Originariamente inviato da Fire-Dragon-DoL
    ...cmq punto a un'utenza che deve avere il javascript attivo...preferisco che non navighino altrimenti
    il che di fatto potrebbe escudere coloro che si trovano in una intranet aziendale (le cui politiche sono restrittive), i disabili cognitivi, gli utenti che fanno uso di screenreader e che usano dispositivi limitati o coloro che disabilitano il javascript appositamente. Il sito sarebbe completamente estraneo ai principi base dell'accessibilità

    Inoltre, per ora, avresti il limite di non poter eseguire chiamate a domini (e/o sottodomini) diversi dal tuo e nessuno potrebbe mettere una pagina interna tra i propri bookmark, oltre che navigare nel sito con i pulsanti "avanti" e "indietro" (e addio anche usabilità)

    Ajax dev'essere un "improvement", un qualcosa di più sopra qualcosa che esiste già e offre le stesse funzionalità: dal mio punto di vista se proprio ti interessa usare massivamente queste interazioni proverei a considerare di sviluppare una vera e propria applicazione con una nuova tecnologia che potrebbe usarla meglio, come ad esempio adobe AIR.
    Vuoi aiutare la riforestazione responsabile?

    Iscriviti a Ecologi e inizia a rimuovere la tua impronta ecologica (30 alberi extra usando il referral)

  5. #5
    beh i pulsanti avanti e indietro ci vuole poco a riprodurli con semplici variabili javascript...

    gli altri utenti che hai citato, non saranno interessati al mio sito (Ho un pubblico preciso a cui verrà indirizzato...)...tranne chi disattiva il javascript di base, ma in quel caso sono "cavoli suoi" come si suol dire :P

    Per le pagine interne non è vero...c'è soluzione anche per quello:
    Modifico la barra degli indirizzi col javascript, quindi la si potrebbe aggiungere ai bookmark e successivamente mi è facile ricrearla...

    il fatto è che facendo i soliti siti in php, avrò sempre quel brutto effetto di refresh generale della pagina...

    Ah dimenticavo, il problema dei browser datati sorge lo stesso perchè come ho detto ho intenzione di usare XML e XSL...e quindi mi serve come minimo IE5 (che cmq non lo supporta correttamente, come detto dal w3c)

    Di Adobe AIR non so niente...però vorrei far evitare agli utenti di scaricare plugin di qualsiasi sorta...

    EDIT:
    Comunque riflettendo, da quel che hai descritto AJAX risulta quasi inutile...che sia un improvement o che venga utilizzato come ho detto io...perchè c'è sempre gente a cui non funzionerà..

  6. #6
    Frontend samurai L'avatar di fcaldera
    Registrato dal
    Feb 2003
    Messaggi
    12,924
    Originariamente inviato da Fire-Dragon-DoL
    Comunque riflettendo, da quel che hai descritto AJAX risulta quasi inutile...
    No
    Ajax è utile come ad esempio può essere utile il caricatore multiplo di CD per l'auto
    ma se non garantisci che il lettore CD funzioni da solo, te ne fai ben poco del caricatore multiplo.



    con i pulsanti "avanti" e "indietro" non intendo la loro realizzazione dal punto di vista di layout, ma dalle funzionalità che offrono. In altre parole è necessario ricreare tutti gli stati della tua applicazione (prima della chiamata ajax -> dopo e viceversa ovvero annullare gli effetti della chiamata) e il fatto che li crei tu non sposta di molto la questione... la gente è abituata ad usare i pulsanti del browser per accedere alla history.
    Vuoi aiutare la riforestazione responsabile?

    Iscriviti a Ecologi e inizia a rimuovere la tua impronta ecologica (30 alberi extra usando il referral)

  7. #7
    Ci rifletterò...se invece dovessi farci solo una guida ?Quindi non avrei supporto in php...

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.