Вы можете проверить свойство persisted
события pageshow
. Он установлен на значение false при начальной загрузке страницы. Когда страница загружается из кеша, она имеет значение true.
window.onpageshow = function(event) {
if (event.persisted) {
alert("From bfcache");
}
};
По какой-то причине jQuery не имеет этого свойства в событии. Вы можете найти его из оригинального события.
$(window).bind("pageshow", function(event) {
if (event.originalEvent.persisted) {
alert("From bfcache");
}
});
Этот статья (связанный с archive.org, поскольку исходная ссылка является теперь битой) могла бы быть полезной с автоматическим обнаружением установки языка браузера.
[РЕДАКТИРОВАНИЕ] Да. Заключенная в кавычки статья не использует ASP.NET. Этот статья делает.
Попробуйте это в web.config:
<globalization culture="auto" uiCulture="auto" />
Это заставит ASP.NET автоматически обнаруживать культуру клиента от заголовка запроса. Можно также установить это на основе на страницу через атрибут Page.
Это - большой вопрос как локализация в , ASP.NET пропущен многими разработчиками.
ASP.NET должен автоматически погрузка на настройках браузера пользователя и вызывать CultureInfo.CurrentCulture
на язык браузера пользователя. Можно вызвать проблему со строкой в Page_OnInit()
как:
Thread.CurrentThread.CurrentCulture = new CultureInfo(HttpContext.Current.Request.UserLanguages[0]);
, Как можно протестировать это? Введите панель языков в наш браузер и измените настройки.
Клиент обычно устанавливает Принимать-язык в заголовке Запроса HTTP с количественно выигранным списком предпочтительного языка, традиционно (но не обязательно) в порядке самого привилегированного к наименее привилегированному. Можно проанализировать это, но поскольку Maxam отметил, , ASP.NET действительно имеет механизм для того, чтобы сделать это от Вашего имени.