5月更新・前月(4月)の人気記事トップ10 05/02/2023
- ( 02 ↑) 【Mac】MacにGoogle Driveをインストール
- ( 01 ↓) 【iPhone / iPad】iPhoneでSuicaをクレジットカード無しで使う方法
- ( 03 – ) 【iPhone / iPad】iPhoneのツイッターアプリでユーザー名をコピーする方法
- ( 05 ↑) 【Mac】Macのユーザー名とアカウント名を変更する
- (圏外↑) 【Labs】CSSだけでドロップダウンメニュー
- ( 07 ↑) 【jQuery】入門2. jQueryをHTMLに組み込む
- ( 04 ↓) 【Labs】position:absoluteとwidth:100%を指定すると横幅の設定がうまくいかない場合の対処方法について
- (圏外↑) 【2022年7月】Mac画面解像度まとめ
- (圏外↑) 【GIMP】線を真っ直ぐ引く方法
- ( 08 ↓) 【Labs】マウスオーバーでボタンの色が変わるロールオーバー
【Labs】JavaScriptで振り分ける方法2パターン
こんにちは(・∀・)
今日はJavaScriptで振り分ける方法2パターンをご紹介します。
JavaScriptとレスポンシブデザインの組み合わせ
レスポンシブデザインのサイトでスマホ向けとPC向けでJavaScriptを使い分けたい場合は多くあると思います。
スマホ向けのページにはJavaScriptを使いたいけどPC向けのページではJavaScriptは必要ない、逆の場合もあれば、またはそれぞれ別のスクリプトを使用したいこともあります。
Contents
Windowサイズで振り分ける
Windowサイズで振り分ける方法です。
サンプル
JavaScript
<script>
$(function(){
if($(window).width() < 769){
//forスマホ
}else{
//forPC
}
});
</script>
画面サイズで振り分けることができます。
要素の有無で判別
画面に表示されている要素の有無で振り分ける方法です。
サイトに表示させるグローバルナビやボタンなどはスマホサイトとPCサイトで変えていることは多いと思います。
例えばスマホサイトではハンバーガーボタンを使いますが、PCサイトでは別の方法でボタンを表示するなど。
それら要素の表示非表示を利用します。
サンプル
.is(':visible')または.is(':hidden')で要素の表示非表示を判別します。
CSS
<style>
#hoge {
display: none;
}
@media (min-width: 769px) {
#hoge {
display: block;
}
/* ** */}
</style>
JavaScript
<script>
$(function() {
$(window).on('load resize', function(){
if($('#hoge').is(': hidden')){
//forスマホ
} else {
//forPC
}
});
});
</script>
目印となる要素がdisplay:noneなのかdisplay:blockなのかで判別して振り分けます。
参考
javascript(jQuery)でメディアクエリを判定する方法(IE9対応)