今年はやちがLIGブログで紹介した記事をまとめてみた。

どうもですよ、フロントエンドエンジニアのはやちです✌(´ʘ‿ʘ｀)✌
LIG Advent Calendar10日目の記事を担当します！

今回は、はやちが今年LIGブログで投稿していった記事をご紹介しようとおもいます。

---

## [JavaScript不使用！ SVGを使ってCSSでチェックボックスを作る方法](https://liginc.co.jp/315466)
![checkbox.jpg](https://qiita-image-store.s3.amazonaws.com/0/60887/2ab951bb-a72a-3018-1b85-a1b30c54047f.jpeg)
checkboxのチェックを手書きで書いているような方法をご紹介しました。
チェック以外に塗りつぶし、下線方式のデザインも応用可能です。
<img width="342" alt="スクリーンショット 2017-12-05 14.49.40.png" src="https://qiita-image-store.s3.amazonaws.com/0/60887/5cb0bde5-0fba-419f-3ddc-746837d0250b.png">
<img width="333" alt="スクリーンショット 2017-12-05 14.49.50.png" src="https://qiita-image-store.s3.amazonaws.com/0/60887/005811b1-5d80-5005-70c0-b70d3ac4bc7b.png"><img width="372" alt="スクリーンショット 2017-12-05 14.49.58.png" src="https://qiita-image-store.s3.amazonaws.com/0/60887/7607d275-ce18-2af0-c4da-35498f748fd4.png">

## [Snap.svgでsvgのパスを動かしたアニメーションを作ってみた](https://liginc.co.jp/351299)
![snap.svg.png](https://qiita-image-store.s3.amazonaws.com/0/60887/f5168311-2e27-4a25-6eaf-961dba9c261a.png)
[Snap.svg](http://snapsvg.io/)ではじめてSVGのモーフィングアニメーションを触りました。
![snap.gif](https://qiita-image-store.s3.amazonaws.com/0/60887/9f9b08a5-1504-c1bf-1d8c-357f19d04858.gif)

いつも使ってる「hayachi.svg」のパスのパターンを用意して配列で回すことで簡単にむにむにするようなアニメーションが作れました。

## [CHARTIST.JSとScrollMagicを使ってスクロール到達時のアニメーションを実装してみた](https://liginc.co.jp/352989)
![cheatist-scroll.jpg](https://qiita-image-store.s3.amazonaws.com/0/60887/ab0074e7-b28f-c426-167a-5452fb294ac4.jpeg)
グラフをSVGで生成してくれる[CHARTIST.JS](https://gionkunz.github.io/chartist-js/)とスクロールのアニメーションの制御で[ScrollMagic](http://scrollmagic.io/)のふたつのライブラリを使って、アニメーションの実装をしました。
![graph.gif](https://qiita-image-store.s3.amazonaws.com/0/60887/b3e63234-c266-fdaf-8ad6-54e8939deff9.gif)

## [複数行の文末に「…」をつけるcssをMixin管理してみた！](https://liginc.co.jp/338447)
![text.jpg](https://qiita-image-store.s3.amazonaws.com/0/60887/86cc92ed-d84f-85de-3384-1283fdb6c9a0.jpeg)
複数行の文末に「…」をつけるcssの実装とMixin化をして、管理しやすくした方法をご紹介しました。

### Mixin

```css
@mixin abridgement($line-height,$font-size,$lines,$color){
  line-height: $line-height;
  height: $font-size*$line-height*$lines+px;
  overflow: hidden;
  position: relative;
  word-break: break-all;
  text-align:justify;
  &:before,
  &:after{
    position: absolute;
  }
  &:before{
    content: '...';
    background: $color;
    right: 0px;
    text-align: center;
    width:1em !important;
    top:$font-size*$line-height*($lines - 1) +px;
  }
  &:after {
    content: '';
    height: 100%;
    width: 100%;
    background: 0px;
    z-index: 2;
    background: $color;
  }
}
```

### 呼び出し方

```html
@include abridgement(行間,文字数,表示したい行数,#背景色);
```

行間、文字数、表示したい文字、背景色をカスタマイズできるようにMixinを制作しました。
ただし、背景が透過しているものや、背景に模様があるものに関しては対応できないのでご注意を！

## [FullPage.jsプラグインって凄いんだよ、応用的な部分を紹介！](https://liginc.co.jp/361143)
![fullpage.jpg](https://qiita-image-store.s3.amazonaws.com/0/60887/58cee6c7-61c9-b621-daf9-9c6959de5f6a.jpeg)
基本的な導入部分の紹介の記事が多いfullPage.jsを独自の関数やイベントを使用して応用的にご紹介しております。

### 矢印ボタンつき
![fullpage.gif](https://qiita-image-store.s3.amazonaws.com/0/60887/567bed5e-5f0f-72e8-6826-e51af7bb9c4f.gif)
**$.fn.fullpage.moveTo()**を使用して矢印にイベントを着けています。

### 全てのページ数と今いるページの数を出す
![fullpage-num.gif](https://qiita-image-store.s3.amazonaws.com/0/60887/be3bc030-8bdc-cccb-d5ce-452e43eb04eb.gif)
スクロールが終了したあとと、セクションがロードされたときに、コールバックが発生する**afterLoad (anchorLink, index)**で到達した時のページの数字を表示させてます。
セクションから離れて新しいセクションへ移行到達時に起動される**onLeave (index, nextIndex, direction)**を使って現在のページの数字を削除をしています。


## テーブルタグをレスポンシブサイトでも見やすくする方法・４選
![table.jpg](https://qiita-image-store.s3.amazonaws.com/0/60887/3f45fecc-1c48-5517-588e-acb586fcb764.jpeg)
テーブルワンソースでスマホ確認した際にどのように表示させるか紹介させていただきました。
![table-css.gif](https://qiita-image-store.s3.amazonaws.com/0/60887/8b310776-fee5-d2ab-dc43-14661860423f.gif)

## パラパラ漫画風のjQueryプラグインを紹介します。
![book.jpg](https://qiita-image-store.s3.amazonaws.com/0/60887/a8ca6408-f771-bb63-5bad-01baa1ba3a5f.jpeg)
パラパラ漫画風はスプライト画像をcssでコマ送り再生はできますが、こちらのライブラリはコマ送り再生だけではなくドラックの対応も可能です。
![roller.gif](https://qiita-image-store.s3.amazonaws.com/0/60887/317b886f-31a4-7962-6049-318f03166e28.gif)

## おわりに
基本的にSVGの紹介が主で、コーディングの小技がちょいちょいという感じで紹介してきました。
来年のリグブログでの方向性としては引き続きSVGはやっていきますがもう少し実装以外のところの面も着目していけたらいいなと思っているところです！
今後もはやちをよろしくお願いしますね✌(´ʘ‿ʘ｀)✌