Я нашел (из этого вопроса - Скрыть div, если экран меньше определенной ширины ) этот фрагмент кода
$(document).ready(function () { if (screen.width < 1024) { $("#floatdiv").hide(); } else { $("#floatdiv").show(); } });
Единственная проблема в том, что я не могу получитькод для работы, мне нужно только код для работы для IE, я собираюсь использовать Media Queries для других (более новых) браузеров.Любые советы / подсказки, где я иду не так?
Пока у меня есть <div id="floatdiv">
<div id="floatdiv">
Затем в конце этого div (где закрывается) у меня есть
<!--[if lt IE 9]> <script type="text/javascript" src="http://dl.dropbox.com/u/17087195/website/sidebar_size.js"></script> <![endif]-->
В моем заголовке у меня есть <script type='text/javascript' src='http://www.itsdaniel0.com/wp-includes/js/jquery/jquery.js?ver=1.4.4'></script>
<script type='text/javascript' src='http://www.itsdaniel0.com/wp-includes/js/jquery/jquery.js?ver=1.4.4'></script>
И я все еще не могу заставить код работать (тестирование в IE8) Я все еще где-то ошибаюсь?
Обновление У меня есть другой кусок jQuery, может ли это быть причиной проблемы?Вот полный фрагмент кода ниже
<div id="floatdiv"> <div class="floating-menu"> <iframe src="http://www.facebook.com/plugins/like.php?href=http%3A%2F%2Fwww.itsdaniel0.com%2F2011%2F03%2Funicorns-are-cool%2F&layout=box_count&show_faces=true&width=55&action=like&colorscheme=light&height=65" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:55px; height:65px;" allowTransparency="true"></iframe> <br /><br /><a href="http://twitter.com/share?url=http%3A%2F%2Fid0.me%2Fj0&counturl=http://www.itsdaniel0.com/2011/03/unicorns-are-cool/" class="twitter-share-button" data-text="Unicorns Are Cool" data-count="vertical" data-via="itsdaniel0 #itsdaniel0">Tweet</a><script type="text/javascript" src="http://platform.twitter.com/widgets.js"></script> <br /><br /> <script src="http://widgets.fbshare.me/files/fbshare.js"></script> </div> </div> <script type="text/javascript" src="http://dl.dropbox.com/u/17087195/website/sidebar.js"></script> <!--[if lt IE 9]> <script type="text/javascript" src="http://dl.dropbox.com/u/17087195/website/sidebar_size.js"></script> <![endif]-->
Сообщение об ошибке
Сведения об ошибке веб-страницы ПользовательАгент: Mozilla / 4.0 (совместимый; MSIE 7.0; Windows NT 5.1; Trident / 4.0; chromeframe / 10.0.648.133; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; OfficeLiveConnector.1.5; OfficeLivePatch.1.3; .NET4.0C; .NET4.0E; InfoPath.2) Метка времени: сб, 12 марта 2011 г. 11:31:32 UTC Сообщение: ожидаемый идентификатор, строкаили число Строка: 140 символов: 1 Код: 0 URI: www.itsdaniel0.com/2011/03/unicorns-are-cool/ Сообщение: объект не поддерживает это свойство или метод Строка: 16 символов: 1 Код: 0 URI: dl.dropbox.com/u/17087195/website/sidebar_size.js Сообщение: 'twttr.anywhere._instances' является нулевым или не является объектом Строка: 1 символ: 5207 код: 0 URI: platform.twitter.com/anywhere.js?id=6vIPELyEeU5vcSc3c0Q5w&v=1 Сообщение: 'twttr.anywhere._instances' является нулевым или не является объектом Линия: 1 символ: 5207 Code: 0 URI: platform.twitter.com/anywhere.js?id=6vIPELyEeU5vcSc3c0Q5w&v=1
Сведения об ошибке веб-страницы
ПользовательАгент: Mozilla / 4.0 (совместимый; MSIE 7.0; Windows NT 5.1; Trident / 4.0; chromeframe / 10.0.648.133; .NET CLR 1.1.4322; .NET CLR 2.0.50727; .NET CLR 3.0.4506.2152; .NET CLR 3.5.30729; OfficeLiveConnector.1.5; OfficeLivePatch.1.3; .NET4.0C; .NET4.0E; InfoPath.2) Метка времени: сб, 12 марта 2011 г. 11:31:32 UTC
Сообщение: ожидаемый идентификатор, строкаили число Строка: 140 символов: 1 Код: 0 URI: www.itsdaniel0.com/2011/03/unicorns-are-cool/
Сообщение: объект не поддерживает это свойство или метод Строка: 16 символов: 1 Код: 0 URI: dl.dropbox.com/u/17087195/website/sidebar_size.js
Сообщение: 'twttr.anywhere._instances' является нулевым или не является объектом Строка: 1 символ: 5207 код: 0 URI: platform.twitter.com/anywhere.js?id=6vIPELyEeU5vcSc3c0Q5w&v=1
Сообщение: 'twttr.anywhere._instances' является нулевым или не является объектом Линия: 1 символ: 5207 Code: 0 URI: platform.twitter.com/anywhere.js?id=6vIPELyEeU5vcSc3c0Q5w&v=1
Удален http из URL из-за ошибки «low rep»
СТАРЫЙ ОТВЕТ С ИСПОЛЬЗОВАНИЕМ JQUERY:
//the function to hide the div function hideDiv(){ if ($(window).width() < 1024) { $("#floatdiv").fadeOut("slow"); }else{ $("#floatdiv").fadeIn("slow"); } } //run on document load and on window resize $(document).ready(function () { //on load hideDiv(); //on resize $(window).resize(function(){ hideDiv(); }); });
РЕДАКТИРОВАТЬ: обратите внимание, что теперь стало намного больше межбраузерной поддержки медиазапросов css3, гораздо эффективнее использовать их, чем javascript.
ИСПОЛЬЗОВАНИЕ CSS.
/* always assume on smaller screen first */ #floatdiv { display:none; } /* if screen size gets wider than 1024 */ @media screen and (min-width:1024px){ #floatdiv { display:block; } }
Обратите внимание, что в большинстве современных браузеров вы также можете запускать медиазапросы в javascript, используя window.matchMedia
if(window.matchMedia("(min-width:1024px)").matches){ console.log("window is greater than 1024px wide"); }
вам нужно установить элемент экрана:
var screen = $(window)
например:
$(document).ready(function () { var screen = $(window) if (screen.width < 1024) { $("#floatdiv").hide(); } else { $("#floatdiv").show(); } });
Медиа-запросы на выигрыш
Как сделать так, чтобы div не отображался, если окно браузера имеет определенную ширину?
@media all and (max-width: 1024px) { /* Change Width Here */ div.class_name { display: none; } }