クロピグログ

職業訓練で学んだことまとめ

【JavaScript授業十七日目】JQuery(続き)

●$:読み ドル/ダラー 

※阿久津さんはダラーと言っているので「ダラー」推奨

 

●widthとhightの書き方3種類

widthとhightはよく使うので書き方増えて優遇されている

例)ID名「content3」に幅50%を設定してみる

1.通常の書き方  
     $('#content3').css('width''50%');
  
2.複数指定するときに便利
   $('#content3')    
        .css({
          'width': '50%',
        });
 
3.widthとhightのみ使える書き方
      $('#content3').width('50%');

 

問題:三秒後、幅を200px減らして画像表示し、コンソールにも表示する

   let width = $("#mountain").width();
   setTimeout(function () {
     $("#mountain").width(width - 200);
     console.log("写真の幅:" + $("#mountain").width());
   }, 3000);

f:id:chromiumpig:20200821095241p:plain

f:id:chromiumpig:20200821095244p:plain

https://taneppa.net/jquery-event-list/

◆イベント駆動モデル

イベント:ユーザの操作(他もある)

 

・ユーザの操作をきっかけに関数を呼び出して処理する

 

★必ず確認すべき3つ

1.イベントが発生する場所

2.イベントの種類(例:クリック、ダブルクリック)

3.イベント発生場所に呼び出される処理(関数)

f:id:chromiumpig:20200821095248p:plain

      $('.btn1').on('click'function () {
        $('.box1').css('color''red');
      });

・場所:$('.btn1') → クラス名「btn1」要素

・種類:'click' → クリック

・処理(関数):function () {$('.box1').css('color', 'red');}
        クラス名「btn1」の文字色を赤に変更

f:id:chromiumpig:20200821095251p:plain

f:id:chromiumpig:20200821095254p:plain

f:id:chromiumpig:20200821095257p:plain

f:id:chromiumpig:20200821102457p:plain

     $('.btn1-1').on('click'function () {
        $('.box1').hide(500);
      });

・場所:クラス名「btn1-1」

・種類:クリック

・処理:box1を0.5秒をかけて表示「$('.box1').hide(500); 」

 

●fadeToで表示切替

      $('.btn8').on('click'function () {
        let res = $('.box8').css("opacity"); 不透明度の数値代入
        if (res == 1) { 表示されている時は(不透過度1)
          $('.box8').fadeTo(5000); 非表示(不透過度0)にする
        } else {  非表示の時は(不透過度0)
          $('.box8').fadeTo(5001); 表示(不透過度1)する
        }
      });

・fadeToメソッド:任意の透明度に変更

 非表示(display:none;)されないので要素の高さが維持される

 toggleがないので必要な場合は自前実装

・第1引数:期間

・第2引数:透明度(opacity)指定

 

JQueryのメソッドの種類(公式ページ)

https://api.jquery.com/

 

f:id:chromiumpig:20200821142905p:plain

 

●コールバック関数

・この記述は、表示が終わった後に文字色を赤くする

      $('.btn2-2').on('dblclick'function () {
        $('.box2').show(5000function () {
          $('.box2').css("color", "red");
        });
      });

赤い部分:コールバック関数

・表示・非表示用(show,hide)のメソッドは処理完了後に呼び出す関数を指定できる

 例) $("場所").show(時間,関数);

・処理完了後に呼び出す関数をコールバック関数という

f:id:chromiumpig:20200821120959p:plain

●右に10px移動させるアニメーション

$('.btn1-1').on('click'function () {
  let animeElm = $('.box1');
 アニメーションさせる要素オブジェクトを取得
 変数animeElmに代入(文字列を数字にする「0px」→「0」)
 let animeLeft = parseInt(animeElm.css('left'));
 アニメーションさせる要素のleftプロパティを
 取得して数値に変換後に変数animeLeftに代入
  animeElm.animate({ 'left': animeLeft + 10 }, 500
 アニメーションさせる要素のleftプロパティを+10してアニメーション
 function () {
    animeElm.css("color""red"); コールバック関数で文字色赤に
  });
});

f:id:chromiumpig:20200821153456p:plain

f:id:chromiumpig:20200821155318p:plain
●イージイイグプラグイン:イージングキーワード

http://gsgd.co.uk/sandbox/jquery/easing/

↓ソース読み込んでる

  <script src=
libs/jquery-easing/1.4.1/jquery.easing.min.js">
</script>

●Easing/jQuery

http://semooh.jp/jquery/cont/doc/easing/