質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.46%
HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

Q&A

1回答

987閲覧

PCサイズのみjsを動作させたい

buk

総合スコア53

HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

0グッド

0クリップ

投稿2021/08/06 09:05

編集2021/08/06 10:16

midnight.jquery.min.jsを使っています。
https://aerolab.github.io/midnight.js/

やりたい動作としまして、
ウィンドウサイズが1080px以上のときだけに発動させて、
1080未満はjsを動作させないようにしたいです。

現状だと、1080→800にウィンドウサイズを変更したときは、
jsが発動したままで、思うような実装ができません。
※1080pxを行ったり来たりリアルタイムで動かしたときに、動作⇔無効をリアルタイムで動かしたいです。

$(window).on('load resize', function() { //ウィンドウサイズを取得する var w = $(window).width(); if( w > 1080 ) { $('#site-id').midnight(); } else { $('#site-id').removeAttr('style'); } });

どのように記述すればよいのでしょうか

js動作前

<div id="site-id"> <img src="logo.png" alt=""/> </div>

js動作後

<div id="site-id" style="position: fixed; top: 0px; left: 0px; right: 0px; overflow: hidden; height: 561px;"> <div class="midnightHeader default" style="position: absolute; overflow: hidden; inset: 0px; transform: translateY(-52.4955%) translateZ(0px);"> <div class="midnightInner" style="position: absolute; inset: 0px; transform: translateY(52.4955%) translateZ(0px); overflow: auto;"> <img src="logo.png" alt=""/> </div> </div> <div class="midnightHeader black" style="position: absolute; overflow: hidden; inset: 0px; transform: translateY(47.4332%) translateZ(0px);"> <div class="midnightInner" style="position: absolute; inset: 0px; transform: translateY(-47.4332%) translateZ(0px); overflow: auto;"> <img src="logo.png" alt=""/> </div> </div> </div>

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

kei344

2021/08/06 10:00

プラグイン/ライブラリは似た名前のものもあるため、取得した場所のURLを質問文に追記ください。(URLにはリンクを張ることができます)
kei344

2021/08/06 10:12

この「質問への追記・修正の依頼」の部分はデフォルトで表示されませんので、質問本文に追記することをお勧めします。
guest

回答1

0

動作⇔無効をリアルタイムで動かしたいです。

基本的に無理です。
※ 一応、ライブラリが書き換えを行った箇所を全て自力(自分でコードを書いて)で戻し、ライブラリが登録したイベントを全て削除してまわれば不可能ではないです。

ライブラリによっては、「元の状態に戻す」ためのメソッドが用意されているものもありますが、お使いのライブラリにはその機能が無いようです。

リサイズ時についてはあきらめて、ファーストビュー時のみ分岐するのが妥当かなと思います。

投稿2021/08/06 10:24

kei344

総合スコア69458

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

hentaiman

2021/08/06 11:42

> (自分でコードを書いて) もしくは書き換える前の適用させたいelementを保持しておき、ウィンドウサイズに応じて保持したelementに置き換えるって感じですね inputなどユーザーによって変化する要素があれば無理ですけど
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.46%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問