Niestety wydaje się, że obecnie nie ma sposobu, aby powiedzieć Chromeowi, aby nie pobierał zasobów, dopóki nie zażądasz ich wyraźnie (nawet sprawdziłem w ich sklepie internetowym Extensions, aby sprawdzić, czy ktoś napisał rozszerzenie, które może to zrobić).
Przewodnik programisty Opera dla HTML5, Wszystko , co musisz wiedzieć o stanach wideo i audio HTML5 :
O co chodzi z tym całym pobieraniem?
Opera, Chrome i Safari automatycznie pobiorą cały plik wideo, nawet jeśli jeszcze się nie zaczął odtwarzać. Firefox 3.6 ładuje tylko tyle, aby renderować ramkę i określać czas trwania, chyba że autobuffer
atrybut jest obecny. Zauważ, że specyfikacja zmieniła się z autobuffer
na
preload
, co nie zostało jeszcze nigdzie zaimplementowane. Opera planuje zmienić zachowanie Firefoksa polegające na tym, że ładuje się tylko tyle, aby renderować ramkę i domyślnie określać czas trwania, chyba że
preload
atrybut mówi inaczej.
Znany problem polegał na tym, że Chrome ignoruje ten preload
atrybut, co oznacza, że zawsze ładuje wideo, nawet jeśli nie powinien. Dobra wiadomość jest taka, że ten błąd został naprawiony w najnowszej wersji programisty Chrome:
Komentarz 72 członka projektu [email protected], 5 kwietnia (6 dni temu)
Łaty do implementacji wstępnego ładowania już wylądowały! Atrybut wstępnego ładowania zostanie w końcu rozpoznany w Chrome 12. (kanał deweloperski powinien otrzymać tę aktualizację za kilka tygodni).
Po wprowadzeniu tej zmiany (zależy od używanej wersji Chrome) pliki audio nie powinny być wstępnie ładowane, chyba że kanał RSS, strona internetowa itp. Wyraźnie stwierdza, że powinien zostać wstępnie załadowany.
Moje rozumienie HTML5 prowadzi mnie do przekonania, że jeśli projektant stron internetowych skonfigurował go do wstępnego ładowania, nie ma nic, co można zrobić, aby to powiedzieć. Domyślam się jednak, że wkrótce zobaczymy rozszerzenie lub opcję w przeglądarkach, która pozwoli ci wybrać, czy źródło ma zostać wstępnie załadowane, czy nie (pomyślałbym, jakby działało to w przypadku wtyczek Chrome w trybie Kliknij, aby odtworzyć ).