Как сказать браузеру кэшировать определенный элемент в HTML-документе - PullRequest
2 голосов
/ 12 марта 2010

Я генерирую вывод с php.Я читал о кэшировании HTML-элементов (например, изображений, текста) в браузере, чтобы их не нужно было перезагружать.

Однако я не нашел правильных указаний о том, как их получить.сделанный.Это как "просто кешировать элементы, которые вы хотите, и все готово!"- отлично, но как мне кэшировать что-то вроде этого:

<div id="ubiquitous_heading">
    <img src="logo.png" alt="logo" />
    <span>Welcome to this dummy website</span>
</div>

Есть ли заголовок, который может нацеливаться на элементы HTML и определять, что кэшировать, а что нет?Я имею в виду что-то вроде:

#ubiquitous_heading {
   cache: yes;
}
#no_cache_please {
   cache: no;
}

Есть ли способ сделать это?Что именно имеют в виду люди, когда говорят «you can cache a specific element in your HTML?», ссылаясь на каждый элемент (включая ссылки на css, js).

Спасибо за разъяснение этого вопроса для меня.

Ответы [ 2 ]

2 голосов
/ 12 марта 2010

Только ресурсы могут быть кэшированы. Ваш стандартный веб-запрос имеет следующие ресурсы:

  • HTML-страница (ы)
  • файлы сценариев
  • 1008 * таблица стилей *
  • изображения
  • шрифты (надеюсь, скоро!)

Любой из них можно кэшировать, однако нельзя кэшировать часть одного ресурса на уровне браузера (например, одно правило в таблице стилей или один элемент на HTML-странице).

2 голосов
/ 12 марта 2010

Вы можете кэшировать только ответы на HTTP-запросы, но не их части. Теоретически, вы можете поместить общий заголовок во фрейм и кэшировать его, но чаще всего это будет сложнее и не стоит больших усилий. Что вы можете и должны кешировать - это изображения, сценарии и таблицы стилей; как правило, все внешние ресурсы являются статическими и извлекаются в отдельном запросе.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...