jQuery 上級編1

上級編 その1


ProgateでjQueryの上級編に進んでからかなり進むスピードが遅くなってきたので少しづまとめる。

eqメソッド、indexメソッド


<ul>
  <li>その1</li> <!--0-->
 <li>その2</li> <!--1-->
 <li>その3</li> <!--2-->
</ul>

このような「li」要素にはjavascriptの配列のようにインデックス番号をもっている(0から始まる)。
eqメソッドを使用してjQueryで3番目の「li」要素を取得しcolorをredにする場合は下記のようにする。

$('li').eq(2).css('color','red');

また、インデックス番号を取得したい場合はindexメソッドを使用する。

<ul>
  <li>その1</li> <!--0-->
 <li class = "active">その2</li> <!--1-->
 <li>その3</li> <!--2-->
</ul>

上記の「li」要素から「.active」のインデックス番号をindexメソッドで取得する。

$('li').index($('.active'));

とすると、インデックス番号の「1」が取得できる。

jQuery 中級編

中級編クリア


ProgateでjQuery 中級編をクリアしたけど中身がわかってないので振り返り

thisの構文


thisはイベントが起こった要素を取得することができる。

<ul>
  <li>リスト1</li>
  <li>リスト2</li>
  <li>リスト3</li>
</ul>

のようなli要素に対しクリックしたli要素のみcolorをredにしたい場合は以下のようにする。

$('li').click(function(){
  $(this).css('color','red');
})  

clickイベント時にモーダルが表示、非表示されるようにする


clickイベントの時にモーダルを表示したいのでcssで通常は非表示にしておく。

セレクタ { display:none; }

jQueryでclickイベントを設定し、fadeInメソッドでモーダルを表示する。 例としてid=btnをclickした時に、class=modalを表示したい場合は

$('#btn).click(function(){
  $('.modal').fadeIn();
});

となり、逆にモーダルを非表示にする場合はセレクタに対してfadeOutメソッドで隠します。

hasclassメソッド


hasclassメソッドは引数に指定したクラスをオブジェクトが持っているかを判定する。
持っていればtrue、持っていなければfalseを返す。

$('.answer').hasclass('open')  //結果 false  
$('.answer open').hasclass('open')  //結果 true

判断した後にif文を用いて,結果に応じた処理を行うことも出来る。

jQuery 初級編

初級編クリア


ProgateでjQuery 初級編をクリアしたので簡単にまとめ

jQueryとは


  • javascriptのライブラリの1つ
  • HTMLやCSSでは表現できなかったアニメーションや様々な動きをつけられる

オブジェクトとメソッド


基本的な構造は以下のようにする

$('セレクタ').メソッド(引数);

$(‘セレクタ’)でオブジェクト作成ができ、その後に.メソッドで呼び出す事ができる。

初級編に出てきたメソッド

  • hide ⇢ 要素を隠す(showメソッドは要素を表示する)
  • fadeOut ⇢ 徐々に消えていくアニメーション(fadeInメソッドは逆の効果)
  • slideUp ⇢ 下から上に徐々に消えていくアニメーション(slideDownメソッドは逆の効果)

例としてfadeOutメソッドの使用例

$('セレクタ').fadeOut(slow);
//引数をslowとすると、ゆっくり消えていく

イベントの構文


基本的なイベントの構文は以下のようにする

$('セレクタ').イベント名(function() {
   //イベント発生時に実行したい処理
});

セレクタをクリックした際に、セレクタの入れ子のid = “text"に対し イベント(hideメソッド)を発生させたい場合は

$('セレクタ').click(function(){
   $('# text').hide();
});

以上、忘れる前に備忘録として記録。

javascript 連想配列から要素数を取り出す

連想配列から要素数を取り出し平均を求める

Progateでjavascript 道場コース 基礎編を進めているとはまったのでメモ。

var scores = {Taro: 72, Ken: 93, Tom: 85, John: 68};

このような連想配列から要素数を取り出して「平均点は〇〇です」とconsoleに表示する内容。

var sum = 0 ;
for (var key in scores) {
  sum += scores[key];
}
var avg = sum / scores.length;

これでavgを出力してみてもエラーとなってしばらくはまった。どうやら連想配列は配列と違い変数.lengthで要素数を取り出せないらしい。
なにやら連想配列の場合はobject.keys().lengthで要素数を取るといいらしい。ので

var sum = 0 ;
for (var key in scores) {
  sum += scores[key];
}

var length = Object.keys(scores).length;

var avg = sum / length;
console.log("平均点は" + avg + "点です");

これでなんとか「平均点は79.5点です」と出力されました・・・ やっと先へ進めます・・・・

初めてのJavaScript 第3版 ―ES2015以降の最新ウェブ開発

初めてのJavaScript 第3版 ―ES2015以降の最新ウェブ開発

Markdown記法 入門してみた

Markdown記法 入門


ブログを再開するにあたって、ネタをテキストエディタに溜め込みたいなと思っているとMarkdown記法なるものが便利だという記事を見て入門してみようかなと思い調べてみました。

特徴


  • 手軽に文章構造を明示できること
  • 簡単で、覚えやすいこと
  • 読み書きに特別なアプリを必要としないこと
  • それでいて、対応アプリを使えば快適に読み書きできること

日本語Markdownユーザー会のサイトでは上記のように説明されています。

どうやって書くの


書き方はHTMLのように、いちいちタグで囲む必要がないのでとても使いやすいです。

  • 見出し #(ハッシュ)を行頭につける。HTMLのh1,h2のようにハッシュの数で大きさが変化
  • 段落 文章を段落で分けたい時は空行を入れる
  • 箇条書き 行頭に半角ハイフン+スペース(- )を付ける
  • 強調 強調したい文字を半角*で囲む。1つで囲むとHTMLのemタグ、2つで囲むとstrongタグに対応するようです。

その他にもリンクを貼ったり、罫線引いたりいろいろできますよ!

使ってみて


この文章もMarkdown記法で書いていますが、めっちゃ楽です。最近は仕事中のメモもテキストエディタMarkdownで書いておいて、必要に応じてHTMLに変換したりしています。
基本的な使い方は非常に簡単なので是非お試しあれ。