Я пытаюсь определить размер окна просмотра через jQuery. К сожалению, я не получаю результаты, за которые я пытаюсь.Определить размер видового экрана с помощью jQuery
Во-первых мой CSS:
.site {
max-width: 960px;
}
@media only screen and (min-width : 760px) and (max-width : 1040px) /* tablet */{
.site {
max-width: 620px;
}
@media only screen and (min-width : 240px) and (max-width : 759px) /* mobile */{
.site {
max-width: 285px;
}
Теперь я пытался два различных варианта определения размера окна просмотра:
$(window).ready(function() {
var viewport = $('.site').css("width");
});
$(function() {
if (viewport <= '285px') {
console.log("Mobile,", viewport) ;}
else if (viewport <= '620px') {
console.log("Tablet,", viewport) ;}
else {
console.log("Desktop,", viewport) };
});
Это, к сожалению, всегда возвращает "Mobile, 285px", независимо от того, что size ".site" is ... Это не помогает изменять «.css (« width »)» на «.css (width)» или «.width()».
Второй вариант я попытался было:
$(window).ready(function() {
var viewport = $(window).width();
});
$(function() {
if (viewport <= 759) {
console.log("Mobile,", viewport) ;}
else if (viewport <= 1040) {
console.log("Tablet,", viewport) ;}
else {
console.log("Desktop,", viewport) };
});
Это всегда будет возвращать ошибку в консоли:
Uncaught ReferenceError: viewport is not defined
(anonymous function)
j
k.fireWith
n.extend.ready
I
Это не поможет изменения «$ (окно)» на " $ ('. site') ".
Что я делаю неправильно?
(Для дальнейшего объяснения:.. Моя конечной цели изменения размера отрицательного запаса я даю в выключенный холсте навигацию, чтобы лучше соответствовать ширине экрана И да, я в простом начинающих вровень с JQuery)
Попробуйте изменить $ (window) .ready (function() {to $ (window) .load (function() {. И объявлять var viewport за пределами обработчика нагрузки). – SSA
Хм, поэтому я пробовал: '$ (окно) .load (function() { }) var viewport = $ ('. site'). css ("width"); 'но это не изменило результат ... У него все еще есть вывод, как если бы он был мобильным, независимо от того, действительно ли это ... –
var viewport; $ (window) .load (function() {viewport = $ (window) .width();}); – SSA