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

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

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

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

jQuery

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

Q&A

解決済

2回答

1555閲覧

javascript : jquery 読み込まない

YHoshi

総合スコア12

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

jQuery

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

0グッド

0クリップ

投稿2019/02/22 02:44

Javascriptを使い、ちょっとしたランチャーを作っています。
デバッグ用にalertを挟んでいるのですが、どうしてもうまく行かない点が2点あります。
<詰まって居るところ>
.alert("aaa2")が読まれない。
varで宣言するところが読まれていないのか、var mini からalert("aaa4")の上までをコメントアウトすると、alert("aaa4")から終わりまで通ります。
・launcherWrapがdraggableにならない(alert("aaa6")です)。

職場の先輩に聞いてもよく分からないと言われてしまい、困っております。
どなたかご教示いただけますようお願いいたします。

<div class="launcherGroup"> <header>Launcher Test</header> <div class="launcherWrap"> <div class= "toolbox" id="matomari"><img src="images/matomari.png" /></div> <div class="borderDiv"></div> <div class= "toolbox-minimum" id="minimum"><img src="images/minimum.png" /></div> </div> <div class="Button"><span>表示設定</span></div> </div>
<script> alert("aaa1"); var mini = document.getElementById("minimum"); var launcher = document.getElementsClassName("launcherWrap"); alert("aaa2"); $(mini).click(function(){ alert("aaa3"); if(launcher.style.display="block"){ launcher.style.display="none"; }else{ launcher.style.display="block"; } }); alert("aaa4"); $(document).click(function(){ }); $(function() { alert("aaa5"); $(".Button" ).draggable(); }); $(function() { alert("aaa6"); $(".launcherWrap" ).draggable(); }); alert("aaa2"); $(mini).click(function(){ alert("aaa3"); if(launcher.style.display="block"){ launcher.style.display="none"; }else{ launcher.style.display="block"; } }); </script>
<style> .Button{ width:100px; height:20px; border: 3px solid white; background-color: #0080FF; border-radius:10px; font-size:15px ; font-weight:bold; padding:10px; color:white; text-align: right; line-height: 20px; } .launcherWrap { width:320px; height: 50px; border: 1px solid #0080FF; background-color: white; border-radius:10px; justify-content: space-evenly; display: -webkit-flex; line-height: 50px; } #matomari{ width:105px; height: 40px; margin:5px; text-align: center; margin-bottom:auto; box-sizing: border-box; justify-content: space-evenly; } #kakikomi{ width:105px; height: 40px; margin:5px; margin-bottom:auto; box-sizing: border-box; text-align: center; justify-content: space-evenly; } a > span{ width:130px; height: 40px; font-size: 20px ; font-weight:bold; padding:5px; text-align:center; margin:3px 4px ; border: 1px solid #0080FF; border-radius:10px; } #minimum{ width:60px; height: 40px; margin:5px; margin-bottom:auto; box-sizing: border-box; justify-content: space-evenly; } .borderDiv { background: #97938a; display: block; width: 2px; height: 30%; top: 0; bottom: 0; margin-bottom: auto; margin-top: auto; } img{ width:35px; height:35px; } </style>

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

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

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

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

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

yoorwm

2019/02/22 02:47

getElementsClassNameは正しいですか?というか、エラーを見るようにしましょうよ。
YHoshi

2019/02/22 02:54

コメントいただきありがとうございます。初歩的なミスでお恥ずかしいです。おかげさまで動きました。 しかしながら、alert("aaa3")までは読んでくれず、難儀しています。 jQuery特有の$をつけたほうが良いのでしょうか。試しましたが、良い方策が分からず、、
maisumakun

2019/02/22 03:00

aaa3は、クリック時に動作するものなので、最初は動きません。
YHoshi

2019/02/22 03:03

はい、そこは理解して居るのですが、クリックしても動かないのは何故だろうと思っておりまして。。
退会済みユーザー

退会済みユーザー

2019/02/22 03:31

エラーが発生したらそれ以降は処理はしませんが・・・
guest

回答2

0

javascript

1var launcher = document.getElementsClassName("launcherWrap");

おそらく、getElementsByClassNameの間違いではないかと思われます。

なお、コンソールにdocument.getElementsClassName is not a functionのようなエラーメッセージが出ているかと思いますので、デバッグの際は活用していきましょう。

投稿2019/02/22 02:48

maisumakun

総合スコア145184

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

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

YHoshi

2019/02/22 02:57

コメントいただきありがとうございます。 何度も同じ動きをしていて、確認不足になってしまっておりました。お恥ずかしい限りです。 miniをクリックしたらlauncherが消えるような挙動にしたいのに難航続きで参っています。
guest

0

ベストアンサー

jQueryを利用しているならセレクタの使い方をシンプルに考えてください

document.getElementById("minimum");
↓↓↓
$("#minimum");

document.getElementsByClassName("launcherWrap");
↓↓↓
$(".launcherWrap");

.style.display="block"
↓↓↓
.show()

.style.display="none"
↓↓↓
.hide()

調整

内容をみてみましたがminimumはlauncherWrapの中にあるのですから
minimumのクリックでlauncharWrapを非表示にしてしまうと
再表示する手段がないのでは?

html

1<link rel="stylesheet" href="https://code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css" /> 2<style> 3.Button{ 4 width:100px; 5 height:20px; 6 border: 3px solid white; 7 background-color: #0080FF; 8 border-radius:10px; 9 font-size:15px ; 10 font-weight:bold; 11 padding:10px; 12 color:white; 13 text-align: right; 14 line-height: 20px; 15} 16 17.launcherWrap { 18 width:320px; 19 height: 50px; 20 border: 1px solid #0080FF; 21 background-color: white; 22 border-radius:10px; 23 justify-content: space-evenly; 24 display: -webkit-flex; 25 line-height: 50px; 26} 27#matomari{ 28 width:105px; 29 height: 40px; 30 margin:5px; 31 text-align: center; 32 margin-bottom:auto; 33 box-sizing: border-box; 34 justify-content: space-evenly; 35} 36 37#kakikomi{ 38 width:105px; 39 height: 40px; 40 margin:5px; 41 margin-bottom:auto; 42 box-sizing: border-box; 43 text-align: center; 44 justify-content: space-evenly; 45} 46a > span{ 47 width:130px; 48 height: 40px; 49 font-size: 20px ; 50 font-weight:bold; 51 padding:5px; 52 text-align:center; 53 margin:3px 4px ; 54 border: 1px solid #0080FF; 55 border-radius:10px; 56} 57#minimum{ 58 width:60px; 59 height: 40px; 60 margin:5px; 61 margin-bottom:auto; 62 box-sizing: border-box; 63 justify-content: space-evenly; 64} 65.borderDiv { 66 background: #97938a; 67 display: block; 68 width: 2px; 69 height: 30%; 70 top: 0; 71 bottom: 0; 72 margin-bottom: auto; 73 margin-top: auto; 74} 75img{ 76 width:35px; 77 height:35px; 78} 79</style> 80<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script> 81<script src="https://ajax.googleapis.com/ajax/libs/jqueryui/1.12.1/jquery-ui.min.js"></script> 82<script> 83$(function(){ 84 var mini = $("#minimum"); 85 var launcher = $(".launcherWrap"); 86 $(mini).click(function(){ 87 alert("aaa3"); 88 launcher.toggle(); 89 }); 90 $(".Button,.launcherWrap" ).draggable(); 91}); 92</script> 93<div class="launcherGroup"> 94 <header>Launcher Test</header> 95 <div class="launcherWrap"> 96 <div class= "toolbox" id="matomari"><img src="images/matomari.png" /></div> 97 <div class="borderDiv"></div> 98 <div class= "toolbox-minimum" id="minimum"><img src="images/minimum.png" /></div> 99 </div> 100 <div class="Button"><span>表示設定</span></div> 101 </div>

投稿2019/02/22 03:03

編集2019/02/22 03:29
yambejp

総合スコア114843

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

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

YHoshi

2019/02/22 03:12

頂いたコメントを元に書き換えて見ましたが、alert("aaa1")すら読まなくなってしまいました、、ど素人の質問ですみませんが、何故か教えて頂けますと幸いです。
yambejp

2019/02/22 03:30

どうもうまく伝わっていないようなので コピペで動くバージョンを追記しておきます
YHoshi

2019/02/22 04:29

こんなにシンプルにかけるんですね、、目から鱗です。 レビューして頂けて感謝感激です。 どうもありがとうございました!!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問