0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

【Materialize】JavascriptのDropdownの動かし方について

Posted at

##はじめに

突然ですが皆さんgoogleの__materialize__使ったことありますか?
私はフロントにかける時間を効率的にするためによく使います。
Bootstrapには負けますがこちらのmaterializeもなかなかの知名度で使っている人も多い模様。
しかし使用法で分からなくてハマる経験があったので共有します。

##結論:Dropdownの動かし方
スクリーンショット 2022-01-27 21.51.11.png

今回はJavascriptのDropdownを例に解説します。

手順1

下記の順番でCDNを読み込みます。materializeの公式サイトにcssとjavascript両方CDNがありますので貼り付けてください。直接ファイルをダウンロードしてもいいですがCDNでも後からimportantなどで上書きすれば反映されますので安心です。
注意点は、jQueryの後にjsファイルとmaterialize(jsとcss両方)を読み込むことと、materialize.min.cssの後にcssを読み込むことです。
理由はjQueryのCDNを読み込んでからでないとjsファイルに書いたjQueryが動かないからです。また、下に行けば行くほど優先されるのでmaterializeより自分のcssファイルを下にした方が上書きされやすくなります。

スクリーンショット 2022-01-27 22.03.28.png

手順2

スクリーンショット 2022-01-27 22.01.41.png

ファイル名.htmlに以上のコードをコピペする

手順3

スクリーンショット 2022-01-27 22.01.50.png

ファイル名.js(htmlと同じファイル名)に上記のコードをコピペする。
注意点はjavascriptの場合はこのままコピペで大丈夫ですが、
jQueryの場合は下記のコードの中に書かないと動かないということです。

jqueryの基本
$(function() {
//処理を書く部分
});

手順4

jsを編集する。

スクリーンショット 2022-01-27 22.26.04.png

上記の, optionsを取り除きましょう。
正しくは、init(elems)になります。

開発者モードで見るとoptionsが定義されていないことでエラーが起こっていました。
以上の手順で動くようになります。

##補足:Optionsの使い方

jQueryバージョン

スクリーンショット 2022-01-27 22.29.39.png

上記のように()の中に{}を入れてoptionsを書くだけです。

javascriptバージョン

スクリーンショット 2022-01-27 22.30.36.png

javascriptはelemsの後に,を書いて{}の中にoptionsを書きます。optionsの意味の説明については公式サイトに書いてありますのでそちらをご覧ください。

##まとめ
ここに書いたことは他のmaterializeの要素にも適用できるのでぜひ使ってみてください。
以上でゼロから実装するとかなり大変なドロップダウンがいとも簡単に出来上がります。
materializeだけでなくいろんなツールを使って要領よく進めていきましょう!(特に初心者)

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?