Я использую виджет в своем макете, и теперь у меня его есть, поэтому, когда определенная точка останова ударяется, он не отображает этот более крупный виджет, а затем переходит к меньшему. Чем больше виджет скрывается, тем меньше отображается, но текст, связанный с ними, неверен.Выключение и выключение скриптов на основе запросов к мультимедиа?
Текст для отображения большого виджета и меньшего текста для небольшого виджета. Я уверен, что это связано с сценариями, которые каждый использует. Дисплей не скрывает элементы, но скрипты, похоже, все еще работают.
У меня нет абсолютно никакой информации о JavaScript еще и предпочла бы ответ HTML или CSS, если это возможно. Если нет, тогда я поеду с JS, но вам нужно какое-то направление, пожалуйста. Я читал многочисленные статьи и даже в процессе обучения JS, но до сих пор не знаю, как применяется то, что я прочитал.
@media all and (max-width: 900px) {
// styles
}
if (document.documentElement.clientWidth < 900) {
// scripts
}
Это то, что я обнаружил, что кажется, что это то, что мне нужно, но я не уверен в синтаксисе, как назвать сценарий мне нужно. Я просто поставил сам скрипт без какой-либо другой информации? Кроме того, я читал об использовании JQuery, чтобы сделать это с чем-то вроде этого
$(window).resize(function() {
if ($(this).width() > 480) {
// call supersize method
}
});
И я даже читал об использовании реформатор, чтобы сделать это, но я все равно придется пройти через документацию.
В мусорном контейнере он вообще не отображает текст, но большой текст там и рядом с небольшим виджетами. Мне просто нужно закрыть этот большой скрипт и включить другой в определенный мультимедийный запрос.
Любая помощь очень ценится.
HTML
<aside class="smallScreen">
<div class="smallWeather" style='width: 200px; height: 440px; background-image:
url(http://vortex.accuweather.com/adcbin/netweather_v2/backgrounds/red_500x440_bg.jpg
); background-repeat: no-repeat; background-color: #993333;' ><div
id='NetweatherContainer' style='height: 420px;' ><script src='http://...'></script>
</div></div></aside>
</div></div></div></aside>
<aside class="largeScreen">
<div class="largeWeather" style='width: 500px; height: 440px; background-image:
url(http://vortex.accuweather.com/adcbin/netweather_v2/backgrounds/red_500x440_bg.jpg
); background-repeat: no-repeat; background-color: #993333;' ><div
id='NetweatherContainer' style='height: 420px;' ><script src='http://...'></script>
</div></div></aside>
CSS
@media screen and (min-width: 564px) and (max-width: 604px) {
.largeScreen {
display: none;
}
.smallScreen {
display: block;
width: 55%;
min-width: 240px;
height: 100%;
font-size: 0;
margin-left: auto;
margin-right: auto;
margin-bottom: 1.2rem;
}
.smallWeather {
position: relative;
display: block;
width: 240px;
height: 420px;
background: white;
margin-left: auto;
margin-right: auto;
}
Что такое лучший способ сделать это, и почему пожалуйста? Является ли jQuery лучшим способом с точки зрения производительности мобильных устройств?
UPDATE: Собираюсь использовать enquire.js из-за его простой подход (хотя я все еще немного схематичны на его использование), и как она маленькая.
Это базовый код:
enquire.register("screen and (max-width: 605px)", {
// OPTIONAL
// If supplied, triggered when a media query matches.
match : function() {},
// OPTIONAL
// If supplied, triggered when the media query transitions
// *from a matched state to an unmatched state*.
unmatch : function() {},
// OPTIONAL
// If supplied, triggered once, when the handler is registered.
setup : function() {},
// OPTIONAL, defaults to false
// If set to true, defers execution of the setup function
// until the first time the media query is matched
deferSetup : true,
// OPTIONAL
// If supplied, triggered when handler is unregistered.
// Place cleanup code here
destroy : function() {}
});
Все еще не сделано, и искать больше поддержки с этим. Теперь, когда я выбрал этот маршрут, я вижу, что есть довольно много статей и вопросов об enquire.js. Когда я прочитал, я обновлю ситуацию.
ОБНОВЛЕНИЕ: Здесь я нахожусь, но он пока не работает. У меня есть стили, связанные с каждым сценарием, все еще находящимся в HTML, и не отображаемые, которые не используются соответственно. Будет ли делать эту работу, как только я получу enquire.js правильно?
Вот новый jsbin
Еще раз спасибо за все !!
КИ, так что я сузили свое внимание до enquire.js и используя подход JQuery, но думаю, что, может быть, узнать это путь. Я постараюсь что-то придумать и скоро вернусь. –
Еще одна вещь, которую я хотел бы спросить, если у меня уже есть модернизатор на месте, тогда это будет лучше использовать, чем enquire.js? –
@InfinityDesigns - [Вы должны посмотреть здесь] (http://wicky.nillia.ms/enquire.js/#legacy-browsers), в нем объясняется, как использовать * Modernizr * и * enquire.js * вместе. Просто предоставляя базовое резюме в этом комментарии, вы должны посмотреть на него следующим образом: * enquire.js * полагается на API 'matchMedia', этот API не универсален для всех браузеров. Теперь для * enquire.js * для работы во всех браузерах вы должны использовать * Modernizr *, чтобы определить, поддерживается ли API 'matchMedia' в текущем браузере, если нет, используйте * Modernizr * для загрузки * polyfill *, который добавляет поддержку для API 'matchMedia' для текущего браузера. –