jQueryを主に使ってWebサイトの動きをごにょごにょしているのですが、
レスポンシブデザインでスマホ、タブレット、pcで用いるjQueryを切りたいと考えています!
今回の場合は、pcではlightbox(featherlight.js)で表示していた要素を、スマホではタブ切り替え(生jQueryもしくは何かプラグイン)で表示できるようにしようと思っています。
この際の、jsを切り替えるベストな方法を教えてくださると助かります。
ちなみに自分なりに調べたものとしては
- $(window).on('load resize')でwindowのwidthによって切り替える。
- window.matchMediaをつかってwidthによって切り替える。
- window.userAgent.indexOf('iPhone')をつかってユーザーエージェントによって切り替える
などがありました。
$(window).on('load resize')で過去に切り替えたことがあるのですが、
ぎこちなかったり、すこし挙動が出たりして
(#追記:確実にこれのせいとは言えませんが、画面サイズ変更時に2重に読み込まれるのかも。)
どの方法がいいのか迷っております。
もちろん状況に応じて変わるとも思いますし、
$(window).on('load resize')は画面サイズ変更ごとにjsが動いてしまう。iphoneを横に使用した場合の対応。
matchMediaはIE9以下未対応、
useAgentは対応する個体数が多くなるにつれて大変などあるかと思いますが、
これがおすすめ。これ使うならこうしたほうがいいよ。他にもっといい方法があるよ。や、気をつけるべき点などがあれば教えていただけると助かります。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2015/09/03 13:09 編集