Обновите окно браузера, когда размер окна изменяется до определенной высоты
Может кто-нибудь предложить какой-нибудь код JavaScript, который обновит окно браузера при изменении размера окна до определенной высоты. Похоже на CSS Media запросы.
то есть, если максимальная высота браузера 700px, то обновите.
Заранее спасибо.
2 ответа
Недавно я делал нечто подобное, и я использую замечательную функцию JavaScript:
var viewportwidth;
var viewportheight;
function resize() {
// the more standards compliant browsers (mozilla/netscape/opera/IE7) use window.innerWidth and window.innerHeight
if (typeof window.innerWidth != 'undefined') {
viewportwidth = window.innerWidth,
viewportheight = window.innerHeight
}
// IE6 in standards compliant mode (i.e. with a valid doctype as the first line in the document)
else if (typeof document.documentElement != 'undefined' && typeof document.documentElement.clientWidth != 'undefined' && document.documentElement.clientWidth != 0) {
viewportwidth = document.documentElement.clientWidth,
viewportheight = document.documentElement.clientHeight
}
// older versions of IE
else {
viewportwidth = document.getElementsByTagName('body')[0].clientWidth,
viewportheight = document.getElementsByTagName('body')[0].clientHeight
}
}
Это получит текущую высоту и ширину браузера. Если вы хотите проверить, когда пользователь изменяет размер страницы и вызвать resize()
функция, просто используйте простую команду JavaScript window.onresize=resize();
Это основная функция. Отсюда должно быть достаточно легко внести некоторые изменения в код. Например, если вы хотите, чтобы страница обновлялась только тогда, когда ширина становится больше или равна 700, добавьте что-то подобное в resize()
функция:
if(viewportwidth >= 700) {
window.reload();
}