Определить ширину окна
ГУРУ! Помогите пожалуйста.
Как на jquery определить реальную ширину окна, у меня почему то всю дорогу определяет с учетом скроллбара? |
Agapkin,
document.documentElement.clientWidth |
рони,
спасибо, за ответ, но почему то этот вариант, как и $(window).width(); $(document).width(); тоже срабатывает на 1003px по ширине , при том что в условии стоит если меньше или равно 991 (скроллбар = 12px) или может опять что то не так делаю..... не знаю....... |
Agapkin,
вам со скроллбаром надо или без? <!DOCTYPE html> <html> <head> <title>Untitled</title> <meta charset="utf-8"> <style type="text/css"> body{ height: 2000px; } </style> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script> <script> $(function() { alert([document.documentElement.clientWidth,window.innerWidth]); }); </script> </head> <body> </body> </html> |
у меня получается так:
в css @media на <=991 какие то стили отрабатывают, а на jquery мне надо чтобы отработало тоже на <=991, но т.к. скроллбар =12px, код срабатывает на 1003px получается надо со скроллбаром |
есть конечно вариант по-другому сделать, через одно место, но зато точно работает!!!
привязаться к стилям. например в css назначить какой нибудь бесполезный стиль который будет появляться на определенном разрешении, и его проверять... уже так делал работает на ура, но вот через jquery че то никак не могу победить .... |
просто я в этом почти не понимаю ничего , поэтому вопрос как "легче, правильнее, надежнее" сделать и не громоздить 15км кода
|
или вот вычитал можно еще matchMedia использовать, но говорят некроссбраузерно
|
ну кстати вот так работает без вопросов
if(window.matchMedia('(max-width: 991px)').matches) { lalala } |
Часовой пояс GMT +3, время: 11:41. |