it-swarm.it

Quanto è importante il grazioso degrado di JavaScript?

Gli sviluppatori Web dovrebbero continuare a impegnarsi per migliorare progressivamente le nostre applicazioni Web con JavaScript, garantendo che le funzionalità si degradino con grazia, garantendo così l'accessibilità? O dovremmo dedicare quel tempo a concentrarci su nuove funzionalità o altre aree di sviluppo?

Il sottotesto di questa domanda sarebbe: quanti dei nostri clienti/clienti/utenti utilizzano i nostri siti Web o applicazioni con JavaScript disabilitato? Avete progetti con requisiti che richiedono specificatamente funzionalità JavaScript (quasi tutti i miei), e tali requisiti richiedono anche un gradevole degrado?

Per fare questa domanda, ho richiamato programmers.stackexchange.com senza JavaScript abilitato e sono stato accolto con questo messaggio: "Programmatori - Stack Exchange funziona meglio con JavaScript abilitato". È stato difficile effettuare l'accesso, anche se il sito in genere sembrava funzionare correttamente. (Non sono stato in grado di votare qualsiasi domanda.)

Penso che questo sia un approccio soddisfacente allo sviluppo. Immagina lo sforzo necessario per far funzionare tutte le funzionalità del sito con il semplice vecchio HTML e la logica lato server. D'altra parte, mi chiedo quanti utenti siano stati alienati da questo approccio.

Siamo stati tutti addestrati (almeno i bravi sviluppatori tra noi) a utilizzare il miglioramento progressivo e a garantire che le funzionalità dinamiche delle nostre applicazioni web si degradino con grazia. Questo miglioramento progressivo sta solo pisciando nel vento o alcuni dei nostri clienti utilizzano effettivamente determinati servizi Web senza JavaScript abilitato?

89
Stephen

Uso NoScript ma inserisco nella whitelist qualsiasi sito che intendo effettivamente utilizzare.

Quando si installa NoScript, JavaScript, Java, Flash Silverlight e, eventualmente, altri contenuti eseguibili vengono bloccati per impostazione predefinita . Sarai in grado di consentire l'esecuzione di JavaScript/Java/... selettivamente, sui siti di cui ti fidi. Puoi consentire a un sito di eseguire script temporaneamente, se stai navigando in modo casuale o permanente, quando lo visiti spesso e ti fidi davvero. Ciò significa che NoScript impara dalle abitudini del tuo browser e tende a scomparire in background dopo un po ', ma torna prontamente per salvare la tua giornata se ti imbatti in una pagina Web dannosa.

Quando si naviga in un sito contenente script bloccati, viene mostrata una notifica, simile a quelle emesse dal blocco popup.
Guardala o sull'icona della barra di stato per conoscere le autorizzazioni NoScript correnti ...

http://noscript.net/noscript/ss0.png

52
John Straka

Immagino che la percentuale di persone senza JavaScript attivato sia trascurabile. Ma fai attenzione ai robot dei motori di ricerca! Di solito non usano JavaScript, ma non vorresti che saltassero alcuni dei tuoi contenuti importanti per questo, giusto?

93

Navigo sempre con JavaScript abilitato e fin dall'inizio del browser web.

Mai una volta ho avuto un singolo problema che valeva la pena degradare la mia esperienza di browser. Forse alcuni pop-up o altri fastidi, ma i benefici superano di gran lunga i rischi secondo me.

47
JohnFx

Quando utilizzo la console su Linux, a volte uso Lynx quando una GUI non è disponibile. Per quanto ne so, lynx non ha alcun supporto JavaScript.

Ho anche usato browser mobili meno recenti con supporto JavaScript scadente.

Tuttavia, in tali circostanze, non mi aspetto di ottenere la massima fruibilità dal sito. Di solito sto solo utilizzando Internet per cercare rapidamente qualcosa (ad es. Ottenere un numero di telefono). Pertanto, penso che l'interfaccia non JavaScript del tuo sito debba essere limitata a un ruolo di riferimento passivo. Stack Exchange ne è un ottimo esempio, puoi cercare le risposte, ma non puoi votare. È lì solo per essere usato come riferimento.

23
Adam

Navigo regolarmente sul Web dal browser del mio smartphone quando non sono a casa o in ufficio. Sebbene supporti (almeno un sottoinsieme di) JavaScript, non sempre lo gestisce bene. Ho trovato molti siti Web inutilizzabili perché consumano molte risorse o semplicemente bloccano il browser.

Preferisco il browser integrato, ma tengo in giro due browser alternativi nel caso in cui uno di essi faccia un lavoro migliore.

17
Kenneth Cochran

Una cosa che non è stata menzionata in questo thread è cosa succede se il tuo script si rompe. In molti casi, l'ulteriore esecuzione di script nella pagina potrebbe essere disabilitata, quindi è necessario un modo per tornare a un modo più semplice di navigazione.

Uno script può rompersi per vari motivi, ma i più ovvi sono le richieste incomplete per i file .js, vari componenti aggiuntivi che potrebbero cambiare il DOM ( AdBlock , ecc.) O introdurre oggetti che non vanno bene namespace.

Questo non ha nulla a che fare con le persone che disabilitano esplicitamente gli script o altro. Come nota a margine, molti router moderni, software firewall, ecc. Spesso hanno una funzione per disabilitare/filtrare script, Flash, ecc. Dai siti Web, quindi potrebbe anche essere configurato su un livello di rete lasciando l'utente ignaro di questo (pensa caffè pubblici, scuole o altri ambienti in cui altre persone paranoiche hanno configurato l'accesso a Internet).

Questo è di solito il mio argomento principale per lo sviluppo di siti che si degradano con grazia, almeno con le funzionalità di base del sito (layout e navigazione).

13
jishi

L'unica cosa per cui disabilito JavaScript è testare il mio sito web. Tuttavia, potresti essere interessato a un studio che Yahoo ha riscontrato che l'1-2% degli utenti ha JavaScript disabilitato. Il pubblico di Yahoo è probabilmente un'ottima rappresentazione dell'utente medio.

Una citazione chiave dallo studio:

Mentre il 2% dei visitatori degli Stati Uniti potrebbe non sembrare molto, tieni presente che oltre 300 milioni di utenti visitano Yahoo! homepage ogni mese. Ciò significa che 6 milioni di utenti visitano ogni mese senza il vantaggio di JavaScript. Quindi, anche se vale la pena spendere il tuo tempo sulla versione del sito abilitata per JavaScript, ci sono ancora un numero non banale di utenti là fuori che non saranno in grado di usarlo.

12
VirtuosiMedia

Uso NoScript insieme a AdBlock Plus sempre.

Il Web oggi è troppo ostile (JavaScript intrusivo + annunci fastidiosi) per uscire senza protezione.

7
user8685

Ovviamente stai ottenendo un campione davvero distorto qui, e potresti fare di meglio per fare le tue ricerche sul tuo sito.

Personalmente uso NoScript. Raramente sono riluttante a inserire nella whitelist un sito, ma per farlo mi sembra che valga la pena. (In altre parole, ho bisogno di un motivo, ma non deve essere molto convincente.)

6
David Thornley

Basta leggere Programmatori pragmatici "HTML5 e CSS3" . L'autore afferma che il 5% degli utenti ha JavaScript disattivato.

Ecco la sua fonte: numeri di indice disabilitato JavaScript UE e USA + impatto raccolta dati Web Analytics .

Numeri indice disabilitati JavaScript

UE: 1,4%
Stati Uniti: 3,05%

Fonte: 1.000.000.000 di visite su più proprietà web del settore utilizzando IndexTools.
(VisualRevenue.com/blog - Dennis R. Mortensen)

http://visualrevenue.com/media/uploaded_images/JavaScript-Disabled-735171.JPG

Sembra che anche la percentuale stia diminuendo.

5
Peter Turner

O alcuni di noi utilizzano effettivamente determinati servizi web senza JavaScript abilitato

Sì.

La mia navigazione rientra in tre categorie.

Navigazione normale - Su Safari o Chrome (Mac OS X)
- iGoogle, StackTranslate.it, alcuni blog

Specialesiti web: - Firefox, con NoScript, AdBlock Plus e FlashBlock
Siti con JavaScript inutilmente pesante. (Alcuni siti indiani per film/musica di Bollywood, se questo è importante. Script inutilmente pesante - la pagina stessa viene ricaricata ogni 5 minuti circa)

Navigazione mobile:
Avevo un Nokia 5310. L'ho perso. Ora ho un Sony Ericsson W700i ancora più vecchio. Navigo usandolo mentre viaggio (Opera Mini è abbastanza buona). Questo è il posto (l'assenza di) JavaScript è un dolore. Non voglio interagire con il sito (principalmente), basta leggere. Tuttavia, la maggior parte dei siti è impossibile da visualizzare.

5
Nivas

Tendo a installare NoScript e solo i siti della whitelist di cui mi fido. Altrimenti uso "consenti temporaneamente" per domini specifici quando ne ho bisogno.

Questa è solo una buona sicurezza. Altrimenti stai permettendo l'esecuzione di una quantità arbitraria di codice sul tuo computer! Anche se è in modalità sandbox ... ci sono sempre delle vulnerabilità.

Al di là delle mie abitudini, anche se la maggior parte delle persone naviga con JavaScript, è comunque utile sviluppare siti pensando al miglioramento progressivo. Se il tuo sito è funzionale alla base, può servire il pubblico più vasto. Significa anche che separi i tuoi dati dalla progettazione visiva e dalla logica aziendale. La maggior parte di ciò che fai con JavaScript sul lato client dovrebbe essere fatto comunque sul lato server - farlo lato client dovrebbe essere solo una comodità data a un utente del sito.

Ovviamente ci sono eccezioni che richiedono JavaScript, ma in genere c'è un'aspettativa. Ad esempio, ci si aspetta che abiliti JavaScript per BioLab Disaster , un gioco, ma nessuno per un sito come A List Apart , principalmente solo testo.

Quando compilo un modulo, ci si dovrebbe aspettare che JavaScript sia abilitato a inviare il modulo? Perché? In modo che il codice JavaScript possa verificare per assicurarsi che non ho inserito un numero anziché una lettera?

4
pbdiode

A mio avviso, l'accessibilità supera quasi tutto il resto. Gli utenti che si affidano alla tecnologia di supporto dovrebbero sempre essere in grado di ottenere la maggior parte delle funzionalità di un sito, anche se potrebbe richiedere un po 'più di tempo. Non importa quante percento degli utenti contano su di esso per importare. Sono lieto di programmare un progetto Web open source in cui l'accessibilità è uno dei principali obiettivi e in realtà imparo come posso far accadere le cose in entrambi i modi, con e senza JavaScript. (E molte altre cose legate all'accessibilità, perché JavaScript o meno è in realtà solo una piccola parte del problema.)

C'è un interessante questionario che ha le risposte degli utenti del progetto che ho appena menzionato a quale tecnologia usano qui . Potrebbe essere di vostro interesse.

3
pyvi

Uso Google Chrome + AdBlock Plus e JavaScript è attivo.

EDIT: ora uso NotScript . :)

Chrome ALONE blocca quasi tutti i popup (ho trovato un solo sito [Chess.com] che si è aperto una volta) e AdBlock elimina tutti gli annunci, quindi non ho problemi con quelli.

IMO, JavaScript ti offre una "migliore esperienza" in generale e fintanto che visiti siti affidabili (che non sono stati hackerati ...), stai bene. Come "ragazzi del computer"/sviluppatori, credo che dovremmo avere un acuto "senso di internet" ed essere in grado di dire se un sito può essere dannoso.

3
Mateen Ulhaq

Javascript è disabilitato per impostazione predefinita per quelli di noi su una scatola di Windows Server. La nostra politica IT blocca così tanti siti, l'unico modo per leggere alcuni contenuti è navigare su un server, dove JS è disabilitato di default.

Anche se non è la mia configurazione preferita, è ciò che devo fare a volte.

3

Hmm, ora mi sento come Omega Man . :) Apparentemente sono l'ultima persona che in realtà disabilita JavaScript (e cookie) . (A meno che non ne abbia bisogno per un sito specifico come, diciamo, Stack Overflow.)

Dubito che mi manchi molto - di solito quando faccio accendo JavaScript per un sito, fa qualcosa totalmente inutile, come consentirmi di inviare tonnellate di informazioni personali a estranei totali, o mostrarmi alcune pubblicità in movimento - proprio quello che volevo, un movimento casuale sullo schermo mentre sto cercando di concentrarmi su leggendo un articolo ...

2
Cyclops

Lo voglio. NoScript fino in fondo. Uscirò quando i browser sono in modalità sandbox e non prima.

2
Satanicpuppy

Ho appena risposto a una domanda su AskUbuntu.com - dovevo (temporaneamente - al momento) abilitare JavaScript sul sito. Uso NoScript e abilito JavaScript per un sito quando penso che sia chiaro, ma non fino a quando. Per impostazione predefinita, JavaScript è disattivato per i siti che non ho mai visitato prima.

2

Le persone continuano a parlare di questa decisione come se fosse binaria. O degrada con grazia o no. Invece, perché non considerare i costi rispetto ai benefici di un degrado gradevole per ogni singola caratteristica? Ad esempio, puoi assicurarti che il sito abbia funzionalità di base, ma richiede comunque Javascript per qualcuno di utilizzare funzionalità specifiche.

Ricorda anche che molte persone che disabilitano Javascript lo fanno perché vogliono usare un sito Web leggero e ridotto con solo gli elementi essenziali. Potresti passare tutto quel tempo a far funzionare le tue campane e fischietti per gli utenti che stanno specificamente cercando di evitarli.

La gente si lamenta che è così tanto lavoro da degradare con grazia. Se ti stai lamentando di quanto lavori, probabilmente stai lavorando a una funzione per cui vale la pena richiedere Javascript.

Ritengo che gli utenti senza Javascript debbano sempre essere in grado di navigare nel sito, utilizzare la pagina dei contatti e leggere tutti gli articoli o post di blog che possiedi. Per qualsiasi funzionalità più complessa, effettuare una chiamata di giudizio in base al lavoro rispetto ai benefici coinvolti.

2
lala

La strategia e la pianificazione del sito Web sono caso specifico. Cioè, un sito Web non può assolutamente avere bisogno di supportare IE, figuriamoci pensare a problemi minori come il supporto border-radius di CSS3. Ma altri siti Web potrebbero deve essere compatibile con le versioni precedenti fino a IE6.

Come possiamo capire cosa dobbiamo pianificare per un sito Web? In parte dalla nostra esperienza. I siti Web destinati a programmatori e sviluppatori possono assicurarsi che i loro utenti utilizzino browser piuttosto nuovi e aggiornati con quasi tutte le funzionalità attivate. Tuttavia, i siti Web di notizie dovrebbero pensare che qualcuno da un punto sconosciuto della terra possa connettersi al proprio sito Web per vedere cosa sta passando dall'interno del proprio paese.

Ma oltre alla nostra esperienza e intuizione, dobbiamo anche installare una sorta di analytics servizio sul nostro sito Web, in modo che le nostre decisioni future siano più solide, basate su dati statistici. Ad esempio Google Analytics è un ottimo strumento. Da lì, puoi vedere se hai davvero bisogno di supportare browser più vecchi o meno.

Tuttavia, se vogliamo seguire le Linee guida sull'accessibilità del Web dal W3C, dovremmo sicuramente supportare molte cose, senza considerare le circostanze specifiche del sito.

Nel tuo caso speciale, dico che no. Possiamo tranquillamente dimenticare di non scrivere script nei siti Web di piccole e medie dimensioni. Ma per i progetti più grandi, non è una cattiva idea includere un po 'più di markup nelle tue pagine.

1
Saeed Neamati

Se il tuo sito potrebbe essere utilizzato da persone con disabilità, è una buona idea assicurarsi che sia presente un backup su JavaScript.

1
nkassis

Lo giro solo per sfogliare Pr0n (brutto quartiere!) ;-)

Ho rinunciato a provare a spegnerlo per una normale navigazione perché le cose si sono rotte troppo. E a volte non so nemmeno che è stato rotto fino a quando non lo ho riacceso.

1
nate c

Non dimenticare i biscotti. Considero i cookie più pericolosi di JavaScript. Ero un utente NoScript, ma l'ho disattivato a favore dei siti di cookie autorizzati.

0
Brad Clawsie

Non riesco a decidere se alcune risposte su questo thread sono esilaranti o serie: i cookie sono più pericolosi di javascript? LOL

Qualsiasi sito dovrebbe essere testato con js e cookie disattivati, tuttavia è un minimo imho.

0
wildpeaks

Ho sempre JavaScript attivo. Inoltre, ho sempre il mio kit di ripristino minimo al mio fianco.

Abbiamo bisogno di disabilitare il veto di linea di JavaScript, quindi potrei dire "nessun avviso, nessun reindirizzamento, nessun websocket". La funzionalità è almeno in WebKit , a giudicare dalla console e da vari ispettori.

Ma sì, sempre JavaScript attivo. Soprattutto perché molto presto le persone useranno i socket Web per scatenare ogni sorta di male, esattamente come è successo quando Flash ha ottenuto la "bella" VM. Quindi disattiverò JavaScript. Se me lo permettono, naturalmente.

Voglio godermi il meglio possibile. Quindi ho alcuni ricordi piacevoli di questa era. Voglio essere colpito, voglio ridere delle follie JavaScript, perché mi manca davvero quello che avevamo nel 2007, un flusso di informazioni dolce gratuito come l'acqua di sorgente, fonti aperte ovunque.

Non lo spegnerò finché non dovrò.

0
chiggsy

L'avvio da un CD/DVD live (fisicamente o in una VM) mi fa sentire molto meglio nel consentire a Flash e JavaScript di fare le loro cose. Se ricordo correttamente Linux Mint ha il supporto Flash pronto all'uso.

Per quanto riguarda lo sviluppo del sito, di solito eseguo una quantità ragionevole di div swapping e menu in JavaScript, ma cerco di far sembrare tutto giusto e fondamentalmente lavorare con i CSS.

0
RobotHumans

Solo se il cliente lo richiede esplicitamente

A meno che tu non abbia un numero significativo di utenti che verranno effettuati, è semplicemente uno sforzo extra.

0
Darknight