2010-10-15 8 views
5

Come sviluppatore web in erba sto provando a camminare sulla linea sottile di usabilità/compatibilità multipiattaforma e pizazz (funzionalità).JavaScript sopra/sotto l'uso. cosa è accettabile in questi giorni?

Questo è tanto un problema quanto lo era qualche anno fa? Le parti del mio sito che - oserei dire - richiedono (ovvero rendono la mia vita più semplice) JS non sarebbe qualcosa a cui un mobile vorrebbe accedere (anche se potrebbe farlo se lo volesse).

http://www.w3schools.com/browsers/browsers_stats.asp

Se si scorre verso il basso, sembra indicare che il 95% dei computer che accedono quel sito ha permesso JS/installato.

Qualsiasi input da parte di qualcuno che ha affrontato questo problema sarebbe apprezzato.

Grazie, Jason

+2

Ricorda che il sito * che stai * creando e w3schools possono essere * molto * diversi in termini di pubblico. Ad esempio se hai un sito chiamato www.grandmothers.com, a questo punto nel tempo è improbabile che quelle statistiche del browser ti siano utili, poiché stai mirando a un * molto * diverso demografico. –

+2

Soprattutto grandmothersagainstjavascript.com – Detect

+0

@Detect aww Speravo che fosse un vero sito:/ – lincolnk

risposta

2

Non so chiunque questi giorni chi ha Javascript disattivato in modo permanente. L'enorme quantità di siti che si basano su JS significa che il web è praticamente inutilizzabile senza di esso.

La stragrande maggioranza delle persone lascia semplicemente tutto il tempo. La maggior parte delle falle di sicurezza davvero gravi che erano state utilizzate per far spegnere le persone da tempo sono state risolte, quindi è molto meno un problema di quanto non fosse in passato.

Ci sono ancora alcune cose che preoccupano il paranoico, ma anche allora la maggior parte delle persone che disabilitano JS lo fa su base sito per sito usando uno strumento come l'estensione NoScript di Firefox invece di spegnerlo. Quando queste persone visitano un nuovo sito, devono decidere se si fidano abbastanza per abilitare JS per questo.

L'altro segmento demografico che può essere interessato è gli utenti disabili, utilizzando uno screen reader o altra tecnologia di assistenza. Molte di queste persone potrebbero non essere in grado di utilizzare Javascript. (detto però, molti di loro lo possono fare, gli screen reader non sono così arretrati rispetto ai normali browser come molte persone immaginano)

Alla fine della giornata però, sta a voi decidere davvero cosa fare riguardo al supporto i tuoi visitatori che non hanno JS. Qui ci sono alcune cose da considerare:

  • Il tuo sito assolutamente richiedono Javacript - Se si sta scrivendo un sistema di tipo GMail, e il tutto funziona solo a causa di JS, allora ovviamente non si può non sostenere averlo
  • Quanto del tuo pubblico avrà disabilitato JS? Quanti di loro saranno pronti a riattivarlo solo per visitare il tuo sito? Quante di queste persone sei disposto a perdere? Dovrai conoscere la tua demografia prima di poter rispondere.
  • Puoi scrivere le funzionalità JS in modo che il sito funzioni ancora a sufficienza senza di loro? Gli utenti con JS disattivati ​​si aspettano che i siti che visitano non sembrino grandi e che manchino di funzionalità, ma saranno felici finché i bit importanti continueranno a funzionare per loro.
+0

"L'enorme quantità di siti che si basano su JS significa che il Web è praticamente inutilizzabile senza di esso." - Non mettere troppo in risalto, ma gran parte del web * è * praticamente inutilizzabile per un numero significativo di persone. Non Gmail, però - ha un client solo HTML perfettamente utilizzabile, quindi credo che sia un cattivo esempio del tipo di app che richiede a JS di farlo funzionare. –

0

w3schools viene utilizzato dagli sviluppatori e non è una rappresentazione realistica del pubblico in generale.

Global Stats Counter (http://gs.statcounter.com/) è una misura più valida per gli utenti generici.

Come codice il tuo sito dipende dal il tuo pubblico previsto.

0

Non penso che il numero cambierà drasticamente, il 95% è vicino alla correzione.

Il mio suggerimento sarebbe quello di sostituire JQuery il più possibile, in quanto contribuirà a mitigare i problemi specifici del browser. Inoltre, pianifica di aggiungere la funzionalità NoScript in modo che se il tuo utente non ha JS, si degraderà con garbo a qualcosa con meno "Pizzaz"

Per quanto riguarda i cellulari che accedono a pagine contenenti JS - non preoccuparti troppo di quello , i browser mobili possono elaborare javascript bene.

0

Come detto da altri, questo dipende dal pubblico. Inoltre, il tuo sito dovrebbe avere alcune funzionalità di base. Cioè, dovrebbero essere in grado di visualizzare e utilizzare i tuoi contenuti con qualsiasi cosa. Eventuali extra possono richiedere quelli che possono vederlo.

La maggior parte degli utenti ha JavaScript abilitato, ma a volte non funziona a causa di malware, blocchi di script, blocchi di annunci, ecc. Queste persone sono abituate a cose che non funzionano. (Prova a vedere YouTube e alcuni altri siti popolari senza Javascript abilitato.) Ciò non significa che puoi ignorarli. Significa semplicemente che la maggior parte del tuo sito dovrebbe funzionare senza incidenti senza Javascript.

2

Dipende da cosa stai facendo. Sono fermamente convinto che Javascript stia degradando con grazia se si tratta solo di aggiungere zucchero UI. È una linea sottile, e non c'è una sola risposta. A volte sarai in grado di formulare ipotesi sulla tua base di utenti, ad esempio, se stai scrivendo un'applicazione web mobile, hai praticamente un buon supporto HTML5. Altre volte, potrebbe essere necessario preoccuparsi di avere un supporto IE6 solido. Tutto si riduce a ciò che il tuo pubblico è e quanto tempo puoi permetterti di spendere supportando diverse configurazioni.

Consiglio vivamente che tu, come sviluppatore web in erba, impari come migliorare progressivamente con il tuo Javascript. Spesso è il modo "giusto" per affrontare un problema, anche se non ti interessa supportare i browser senza javascript; ed è molto probabile che ti imbatti in una situazione futura in cui devi supportare i browser a ritroso (che è un gruppo in cui puoi inserire Googlebot).

0

Fintantoché il tuo sito fallisce "con garbo" puoi davvero solo scegliere da te stesso quanta parte della popolazione desideri provare e accogliere.

La maggior parte dei siti che faccio, non ha senso avere funzionalità anche minime senza javascript poiché la ragione stessa per cui sono lì è acquistare/navigare nei contenuti mySQL.

Quindi, mi limito ad assicurarmi che se hanno bisogno di javascript, lo controllo appena la pagina viene caricata e se non è presente, lo faccio sapere bene, che dovranno abilitarlo o installarlo in per far funzionare correttamente il mio sito.

Ovviamente, in un mondo ideale dovresti sempre soddisfare ogni segmento di utenti, ma poiché i clienti raramente vogliono pagare per questo tipo di sviluppo, di solito finisco solo cercando di catturare il segmento più grande che posso per la minima quantità di risorse e sviluppo.

Ecco il codice mi piace usare:.

<!-- make sure javascript is turned on.. --><noscript><div style="position:absolute;top:10px;left:10px;width:300px;height:90px;background-color:#FFF;border:solid;border-width:2px;border-color:#F00;font-size:14px;text-align:center;overflow:hidden;z-index:999;"><div style="position:absolute;top:5px;left:5px;width:50px;height:80px;background-color:#F00;color:#FFF;font-size:48px;text-align:center;line-height:80px;">!</div><div style="width:230px;height:60px;position:absolute;top:15px;left:65px;text-align:center;font-size:13px;color:#F00;font-style:italic;">ERROR: JAVASCRIPT MISSING<br /><br />Enable or install Javascript<br />to view this site.</div></div></noscript> 

Questo ha funzionato bene per me in tutti i browser che ho testato in

0

mi piace che hai fatto la domanda, ma devo dire che sono stato molto deluso dalle risposte che hai ricevuto finora (tra cui la risposta che è stata accettata). Sembra esserci una percezione generale che gli utenti che hanno JavaScript disabilitato siano o Ludditi o idioti. Si è parlato molto di "degradazione aggraziata", e questo manca del tutto. Il punto è l'accessibilità.

A meno che non si sta costruendo un sito che avrebbe offerto nulla a un utente con disabilità visive o motorie (come, ad esempio, un gioco di grafica on-line), il tuo sito dovrebbe funzionare pianura e perfettamente senso con i CSS, immagini e JavaScript disabilitati. Gli utenti ipovedenti probabilmente avranno il CSS sovrascritto in modo da poter leggere lo sceen, e non si preoccuperanno molto delle tue immagini a meno che il testo alt (e longdesc, se ti sei preso la briga di includerlo) lo faccia sembrare abbastanza convincente da preoccuparsi di guardare una versione ingrandita. E il cieco utilizzerà un'interfaccia Braille o uno screen reader come JAWS, nessuno dei quali è particolarmente compatibile con gli aggiornamenti in background su aree casuali della pagina.

Ora, prima che qualcuno scoppi a piangere su quanto sarebbe difficile da progettare per disabili, lasciatemi dire che questa è la parte facile. Progettare l'applicazione di base e funzionante significa prestare attenzione alla struttura del documento (tagging semantico e così via), e se hai prestato attenzione alla struttura del documento, è molto probabile che tu abbia prestato attenzione anche a la struttura dei dati sul server. A questo punto, l'app potrebbe non sembrare molto, ma fornirà tutte le informazioni che dovrebbe fornire e prenderà qualsiasi input necessario dall'utente. Certo, tutto richiede un carico di pagina completo, ma tutto funziona.

Immagini, CSS e JavaScript possono essere utilizzati per migliorare tale applicazione di lavoro. L'oggetto del gioco non è "graceful degradation", ma "progressive enhancement". Immagini e CSS non solo aggiungono decorazioni, ma possono rafforzare la gerarchia delle informazioni e chiarire le azioni degli utenti per gli utenti che sono attrezzati per apprezzare i miglioramenti visivi. JavaScript può sovrascrivere il comportamento predefinito degli elementi dell'interfaccia utente (collegamenti, pulsanti, textareas e così via), fornendo un feedback immediato all'utente e mantenendo un flusso di lavoro ininterrotto. Fornire API AJAX-friendly alle stesse strutture dati che hai usato per le pagine dell'app vanilla HTML non è affatto difficile.

Non ci sono scuse per non prestare attenzione all'accessibilità. Ci sono solo ignoranza e bigottismo.