2015-04-06 10 views

risposta

9

A partire dal 2016 il valore subresource per l'attributo rel era deprecated and removed.

E 'stato sostituito dal Preload API, il che significa che si dovrebbe fare rel=preload per un effetto simile. Per citare le specifiche

La preload parola chiave su elementi di collegamento fornisce un dichiarativa recuperare primitiva che avvia uno dei primi prendere e separa il recupero da esecuzione delle risorse.

Come tale, la parola chiave preload serve come un basso livello primitivo che consente applicazioni di costruire delle risorse carico personalizzato e comportamenti di esecuzione senza nascondere le risorse dal user agent e incorrere in sanzioni ritardati risorse recupero.

Ad esempio, l'applicazione può utilizzare la parola chiave preload di avviare presto, ad alta priorità, e non render-bloccanti recuperare di una risorsa CSS che possono poi essere applicata con l'applicazione al momento opportuno.


Di seguito è la risposta originale scritta nel 2015, per i posteri, che spiega il subresource parola chiave quindi valida.


Il collegamento rel=subresource è quello che viene chiamato link prefetching, in cui il browser tenta di recuperare la risorsa prima che sia necessario, in modo che possa caricare quella risorsa più velocemente dalla cache quando è in effetti necessaria in seguito.

Link prefetching è un meccanismo del browser per scaricare o precaricare le risorse.

link prefetching è un meccanismo del browser, che utilizza il browser di inattività tempo per scaricare o prefetch di documenti che l'utente potrebbe visitare in prossimo futuro. Una pagina web fornisce un insieme di suggerimenti per il precaricamento al browser , e dopo che il browser ha terminato di caricare la pagina, inizia precaricando silenziosamente i documenti specificati e li memorizza nella sua cache. Quando l'utente visita uno dei documenti precaricati, può essere servito immediatamente fuori dalla cache del browser.

Il server fornisce suggerimenti al browser e il browser può consultare la cache e agire in base a questi suggerimenti.

Il prefetching del collegamento esistente utilizza un'intestazione di collegamento HTTP standard e definisce la semantica per il tipo di relazione di collegamento "prefetch".

link rel=subresource fornisce un nuovo tipo di relazione di collegamento con semantica diversa da link rel=prefetch.

Mentre rel=prefetch fornisce un download a bassa priorità di risorse da utilizzare nelle pagine successive, rel=subresourceconsente carico precoce delle risorse all'interno della pagina corrente. Poiché la risorsa è destinata all'uso all'interno della pagina corrente, deve essere caricata con priorità elevata per essere utile.

+1

Grazie per la risposta. Ma ho ancora qualche dubbio sulla seconda parte. Se io uso ** link rel = "subresource" ** piuttosto che il più comune ** link rel = "Styelsheet" ** questo aiuterà a rendere i file javascript più veloci in modo comparativo? – user3456791

+0

Non necessariamente, probabilmente in alcuni casi sarebbe più lento in quanto attenderebbe che il browser sia inattivo prima di caricare il foglio di stile. Per quanto riguarda l'uso del valore 'subresource', nella maggior parte dei casi caricare il foglio di stile come se il valore fosse' stylesheet' se la risorsa fosse necessaria per il pageload, quindi in genere non sarebbe più veloce. Il prefecthing è molto utile quando vuoi caricare una risorsa che è necessaria sulla prossima pagina visitata, o da qualcosa nella stessa pagina in seguito, ad esempio attivando un evento ecc. – adeneo

+0

Questo rende più chiaro. Grazie mille .. – user3456791

10

Chrome sta per rimuovere <link rel=subresource> perché non è utile, proprietaria, e buggy: https://crbug.com/581840

Usa <link rel=preload> invece.