スマホのメニュー部分を作成しているのですが、slideToggleが正常に動かなくて困っています。
https://output.jsbin.com/cozivalibi/1
こちらに展開したのですが、やりたいことは「メニュー」をクリックしたらメニューが開くようにしたいです。
現在、動きは問題ない(開くときにぬるっと開かないのもちょっとおかしいですが)ように見えますが、最初からメニューが開いているとおかしいので、
article#sidenav_sp
をdisplay:none;
に設定すると動かなくなります。
https://output.jsbin.com/bupuqemiro
上記URLとの違いは
article#sidenav_spのdisplay:noneだけです。
原因などわかりましたらご教示いただければと思います。
No.1ベストアンサー
- 回答日時:
PCのローカル環境でざっと動かしてみただけなので、CSS等はほとんど理解してませんが・・・
ご提示のものは、結果的に「閉じたら終わり」というものになっていませんか?
>現在、動きは問題ない~~
とおっしゃってますが、それならアップしたソースが違ってるってことはありませんか?
アップされているものは、閉じるほうのトリガーはありますが、開く方のトリガーがないので、
$(".onmenusp").click(function(){
$('article#sidenav_sp').slideToggle();
});
が動作していないように見受けられます。
具体的な対処法として、開くトリガーのつもり(?)と思われる「メニュー」の部分にクラス設定をしてみてください。
また、当該部分がリンク要素になっていますので、(↑)のスクリプトのままですと、スクリプトの処理後にブラウザがリンク動作を行います。
これを中止したいのであれば、
event.preventDefault()
等を実行するようにしてみてください。
http://api.jquery.com/event.preventDefault/
>開くときにぬるっと開かないのもちょっとおかしいですが~~
当方では再現できませんでしたが、この原因はブラウザのリンク動作ではないかと推測します。
すいません。元のソースが書き換えられたようです^^;
ですがですが、
> 当該部分がリンク要素になっていますので、(↑)のスクリプトのままですと、スクリプトの処理後にブラウザがリンク動作を行います。
がビンゴでした。
ちょっと他のサイトのソースを引っ張ってきた関係で、リンク要素が残っていたのですが、結局押した後にリロードされてメニューが開かない、と勘違いしていました。恥ずかしい。。。
どうもありがとうございました。一日悩みましたがこちらに質問してよかったです!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- JavaScript [Java] Edgeでのアドレスバー非表示について 3 2022/04/20 17:51
- HTML・CSS アコーディオンメニューが思うように動作しません。 1 2023/08/20 16:48
- Access(アクセス) Accessで独自メニューバーまたはリボンを作成したい 1 2022/12/02 14:31
- docomo(ドコモ) 通話録音が(最初から)自動的に始まるアプリは? 7 2023/01/16 15:53
- JavaScript jQueryでのレスポンシブが綺麗に動かない 3 2022/06/21 11:08
- その他(メールソフト・メールサービス) Thunderbird Wordの添付ファイルが開けない 1 2023/06/22 11:20
- Excel(エクセル) Excel起動時にエラーダイアログが表示される 3 2022/07/28 19:52
- PHP style.cssのjQuery条件付きcssが機能しない 4 2022/07/17 18:27
- HTML・CSS HTML & CSS 縦ボックス内の文字の左右センタリング 3 2023/03/25 04:23
- 電子レンジ・オーブン・トースター 電子レンジの非科学的(カルト的)動作の原因について考えられる理由を知りたい 8 2022/11/29 14:47
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
JavaScriptで ブラウザの閉じる...
-
あるurlが存在する(?)かどう...
-
JavaScriptでIEのウィンドウを...
-
ASP(VBS) ←→ JavaScript の変数...
-
JavaScriptを使えない環境につ...
-
ウインドウがアクティブか調べ...
-
ブラウザ自体の事じゃなくてJav...
-
JSPの処理の途中で、JavaScript...
-
resizeToメソッドが動作しません
-
フォルダを自動で開く
-
VBAによる第3、4水準文字の判定...
-
リクエスト結果が一瞬しか表示...
-
VC#でテキストボックスに変数の...
-
デザイン時のVisible=Falseは実...
-
スクリプトエラーについて
-
VB.NET2003 テキストボックスに...
-
鑑定や占いみたいなものを作り...
-
jsでルートディレクトリより上...
-
VBScript から JavaScript を呼...
-
if(1){...}とはどういうことで...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
JavaScriptで ブラウザの閉じる...
-
ブラウザ自体の事じゃなくてJav...
-
ASP(VBS) ←→ JavaScript の変数...
-
javascriptで「オブジェクトを...
-
あるurlが存在する(?)かどう...
-
JavaScriptでIEのウィンドウを...
-
VBS作動中のブラウザのmsgboxに...
-
ブラウザの横幅に応じてとある...
-
slideToggleの動きがおかしい
-
JavaScriptのブックマークレッ...
-
ウインドウがアクティブか調べ...
-
【JavaScript】いまどき未対応...
-
if(1){...}とはどういうことで...
-
Vba SelStart、SelLen教えてく...
-
VB.NET2003 テキストボックスに...
-
JSPの処理の途中で、JavaScript...
-
gas 全角数字を半角数字に変換
-
デザイン時のVisible=Falseは実...
-
「終了していない文字列型の定...
-
フォルダを自動で開く
おすすめ情報