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

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

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

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

JavaScript

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

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

Q&A

解決済

2回答

810閲覧

JavaScriptの$と読み方色々について

nomura02

総合スコア133

HTML5

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

JavaScript

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

HTML

HTMLとは、ウェブ上の文書を記述・作成するためのマークアップ言語のことです。文章の中に記述することで、文書の論理構造などを設定することができます。ハイパーリンクを設定できるハイパーテキストであり、画像・リスト・表などのデータファイルをリンクする情報に結びつけて情報を整理します。現在あるネットワーク上のほとんどのウェブページはHTMLで作成されています。

0グッド

0クリップ

投稿2020/08/02 14:42

https://git.blivesta.com/drawer/
こちらのページをもとにハンバーガーメニューを作りましたが、
意味を分かって使っていなかったので、理解を深めたくて質問しました。

JS初心者なので、チンプンカンプン・勉強不足なことを言ってしまっているかもしれません。
よろしくお願いします。

分からないこと・知りたいこと

  • そもそも$の意味が不明です…いっぱい出てくるんですが…

調べたら、JSだよっていうことを表すもの?みたいな感じでしょうか?しかしなんでこんなにいちいちたくさん書く必要があるんでしょうか?変数だとしたら、何を表しているでしょうか。

  • 現役の皆さんも、こういうプラグインを使っていますか?だとしたら、例えばこれを丸くしたい、とか、もっと独特な動きにさせたいとなった場合、こういうのもとにして、自ら作り直していますか?

  • 一行目の

$(document).ready(function() {
$('.drawer').drawer();
});
すら一人で書ける気がしません。.readyなんてクラス名は無いのに、
どっから出てきたんだろう、という感じです。

実際に書いた(コピペして使った)コード

html

1<!-- drawer.css --> 2<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/drawer/3.2.2/css/drawer.min.css"> 3<!-- jquery & iScroll --> 4<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script> 5<script src="https://cdnjs.cloudflare.com/ajax/libs/iScroll/5.2.0/iscroll.min.js"></script> 6<!-- drawer.js --> 7<script src="https://cdnjs.cloudflare.com/ajax/libs/drawer/3.2.2/js/drawer.min.js"></script> 8 <title>Awesome Cosmetic</title> 9 10 11<div class="drawer drawer--right"> 12 <header role="banner"> 13 <button type="button" class="drawer-toggle drawer-hamburger"> 14 <span class="sr-only">toggle navigation</span> 15 <span class="drawer-hamburger-icon"></span> 16 </button> 17 <nav class="drawer-nav" role="navigation"> 18 <ul class="drawer-menu"> 19 <li><a class="drawer-menu-item" href="#">お花</a></li> 20 <li><a class="drawer-menu-item" href="#"></a></li> 21 <li><a class="drawer-menu-item" href="#">風景</a></li> 22 <li><a class="drawer-menu-item" href="#"></a></li> 23 <li><a class="drawer-menu-item" href="#"></a></li> 24 </ul> 25 </nav> 26 </header> 27 <main role="main"> 28 <!-- Page content --> 29 </main> 30 </div>

JS

1$(document).ready(function() { 2 $('.drawer').drawer(); 3}); 4 5// オプション 6$('.drawer').drawer({ 7 class: { 8 nav: 'drawer-nav', 9 toggle: 'drawer-toggle', 10 overlay: 'drawer-overlay', 11 open: 'drawer-open', 12 close: 'drawer-close', 13 dropdown: 'drawer-dropdown' 14 }, 15 iscroll: { 16 // Configuring the iScroll 17 // https://github.com/cubiq/iscroll#configuring-the-iscroll 18 mouseWheel: true, 19 preventDefault: false 20 }, 21 showOverlay: true 22}); 23 24 25// ボタンの開閉 26$('.drawer').on('drawer.opened', function(){}); 27 28$('.drawer').on('drawer.closed', function(){}); 29 30 31$('.drawer').drawer('open'); 32$('.drawer').drawer('close'); 33$('.drawer').drawer('toggle'); 34$('.drawer').drawer('destroy');

だいぶ初心者な質問ですが、
お時間許される方がいらっしゃいましたら教えて頂けますと幸いです。
よろしくお願いします。

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

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

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

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

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

guest

回答2

0

javascriptにおける$は変数目として使える文字の1つに過ぎません
ただ、jQueryというライブラリでは$をjQuery本体のエイリアスとして
利用しています

多少古いですがjQuery 日本語リファレンスは読んでおいた方がよいかもしれません

投稿2020/08/02 15:06

yambejp

総合スコア116734

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

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

nomura02

2020/08/03 02:40

はい、jQuery 日本語リファレンス読みました。 JSだと思って探してたからおかしなことになっていたようです。 ご丁寧に、ありがとうございました。
guest

0

ベストアンサー

すら一人で書ける気がしません。

別に一人で書く必要はないのでは。
私も個々の役割を理解するまで控えておいて毎回コピペしてましたし。

js

1$ 23$() 45$(document) 67$(document).ready() 89$(document).ready(function(){}) 1011$(document).ready(function(){ 12//ここに処理 13})

長ければ下記でも同じです。

js

1$(function(){ 2//ここに処理 3})

.readyなんてクラス名は無いのに、

どっから出てきたんだろう、という感じです。

クラスではないからです。
分解すると

$() ←セレクタを指定するjQueryお決まりのやつ
今回は要素としては上位に位置するdocumentが指定されています。

.ready() ←ready()メソッド

メソッドなので求められる引数を渡します。
リンクにあるとおり「handler」(function)です。

fouction(){} ←その関数式

つまり、読み解くと
documentの準備ができたら実行される
になります。
「セレクタとは」「documentとは」は調べてください(リンク先にもあるので英語とか関係なく読んでみてください。Google翻訳もそれなりに使えます)。

これに限らず、まとまりで考えるのではなく、ひとつひとつ分解した上で言語化することで、理解しやすくなると思います。

投稿2020/08/02 22:04

m.ts10806

総合スコア80875

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

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

nomura02

2020/08/03 02:39

私…Javascript勉強すれば分かってくるのかなと思って、調べてましたが、これJQueryですね… なんということだ…ありがとうございます… 単純に、 $(' ').( ); 何を(’セレクタ’)どうするか.(メソッド)を定義してるってことですね…すごい初歩的な勘違いでした…ありがとうございます!!!
m.ts10806

2020/08/03 03:38

jQueryはJavaScriptのライブラリなので結局はJavaScriptです。 あくまで簡潔な書き方で色々な機能が使えるというだけですね。 >何を(’セレクタ’)どうするか.(メソッド)を おおよそあっています。 セレクタの使い方とイベントの使い方を覚えればjQueryは8割くらいは理解できたといってもいいかもしれません。
nomura02

2020/08/03 05:57

なるほど~!いや入口ですごいもたもたしてたんだと分かりました!!修業してきます!! ありがとうございます!!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問