「js」カテゴリーアーカイブ

可変グリッドjs

Masonry以外のもの久々に調べた

ドラッグできるよって

【JavaScript】超高機能なグリッドレイアウトを実装する[Packery]はドラッグによる並べ替えにも対応! – ONZE

【JavaScript】超高機能なグリッドレイアウトを実装する[Packery]はドラッグによる並べ替えにも対応!

お金掛かるよって

【jQuery】フィルターやソート機能にも対応したMasonry風jQueryプラグイン[Isotope]の使い方。 – ONZE

【jQuery】フィルターやソート機能にも対応したMasonry風jQueryプラグイン[Isotope]の使い方。

Isotope
https://isotope.metafizzy.co/

お金掛からないけど開発中だしバグとかシラネって

Masonryより高機能!フィルタ、ソート、レスポンシブ対応のグリッドレイアウト「Muuri.js」 | WordPressテーマ/DigiPress
https://digipress.digi-state.com/module-library/grid-layout-js-plugin-muuri/

Masonryと上2つは同じ開発者だって。へぇ!

Ajax通信と画像のアップロード

FormData使わなあかんのですね。。知らんかった。

jQuery Ajaxでファイルを送りたい! – かもメモ

processData: falseとcontentType: falseがポイントの様です。

new FormData()する時にformを渡してやると
form.submit();した時と同じ様に
フォーム内のデータがnameとvalueのセットでそのまま送信されます。

JavaScript – 【jQuery】FormDataの中身をコンソールで確認したい(59822)|teratail
https://teratail.com/questions/59822

フォームからファイルを選択した際に、submitする前にプレビュー表示する方法(jQuery版) – Qiita
https://qiita.com/kon_yu/items/f98df7ac826e7c36cc6c

$(function(){
  //画像ファイルプレビュー表示
  $('form').on('change', 'input[type="file"]', function(e) {
    var file = e.target.files[0],
        reader = new FileReader(),
        $preview = $(".preview");
        t = this;

    // 画像ファイル以外の場合は何もしない
    if(file.type.indexOf("image") < 0){
      return false;
    }

    reader.onload = (function(file) {
      return function(e) {
        $preview.empty();
        $preview.append($('<img>').attr({
                  src: e.target.result,
                  width: "150px",
                   class: "preview",
                  title: file.name
              }));
      };
    })(file);

    reader.readAsDataURL(file);
  });
});

あとひさびさ
JavaScriptメールアドレスチェッカー: 小粋空間
http://www.koikikukan.com/archives/2014/09/18-003333.php

【memo】今週のおバグさんとか

ホバー時にgifアニに切り替えるとChromeで止まる

Gif画像のリロード問題 – Qiita
https://qiita.com/RuriKameoka/items/dfc2ef45a85221ccc4b1

ロールオーバーで画像切り替え レスポンシブイメージ編 – Qiita
https://qiita.com/hibikikudo/items/95376b5134023811a9c1

忘れがちなやつ

max-widthのリセットはautoではなくinitialを使う – Qiita
https://qiita.com/volkuwabara/items/90654ed6bb81c2b8cdaf

Google が提供する日本語 Web フォント – Qiita
https://qiita.com/shotets/items/502f8093d53369eaab50

forループの中でsetTimeoutしたらiはどうなるか – console.lealog();

Swiperのautoplayがフリック後も止まらないようにする

ユーザーアクション後も止まらないようにするには指定が必要

大事。
autoplayDisableOnInteraction:false,

autoplay: { delay: 2500, disableOnInteraction: false, },
もあるけど、こっちはなんかマルチスライドだとバグったので上の記法で回避。

Swiperのページネーションクリック後の動作について – Sketch & Jump

Swiperのページネーションクリック後の動作について

gulpでちょっとバベって見ようと思ったらコケた

世界は回り続けるのです

そろそろesで書くかとbabel入れたら、変換がうまく行かなかった。

gulp + Babelの環境をつくる

ES6 で書く環境を作る(gulp + Babel 編) – Qiita
https://qiita.com/hkusu/items/9b312274b3ff2913e15b
↑記を参考に

$ npm install --save-dev gulp-babel

してgulpfile.jsで処理を通しても変換されず・・・なぜ、とおもっていたら

javascript – babelでトランスパイルをしても元ファイルとほぼ同じファイルが出力されてしまう – スタック・オーバーフロー
https://ja.stackoverflow.com/questions/31664/babel%E3%81%A7%E3%83%88%E3%83%A9%E3%83%B3%E3%82%B9%E3%83%91%E3%82%A4%E3%83%AB%E3%82%92%E3%81%97%E3%81%A6%E3%82%82%E5%85%83%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%81%A8%E3%81%BB%E3%81%BC%E5%90%8C%E3%81%98%E3%83%95%E3%82%A1%E3%82%A4%E3%83%AB%E3%81%8C%E5%87%BA%E5%8A%9B%E3%81%95%E3%82%8C%E3%81%A6%E3%81%97%E3%81%BE%E3%81%86

readmeをよんでねって。
https://www.npmjs.com/package/gulp-babel

インストールもいっこ必要やった。

$ npm install --save-dev gulp-babel babel-preset-env

そしてgulpfile.jsで指定するpresetsの値が変わっていた

presets: ['env']

結局こうなった

/**
 * babel:test
 */
$.gulp.task('babel', function() {
        console.log('babelchange watched');
  $.gulp.src(PATH.develop + 'assets/es6/**/*.js')
    .pipe($.babel({
      presets: ['env']
    }))
    .pipe($.gulp.dest(PATH.develop + 'assets/js/'));
        console.log('babel');
});

とりあえずとおった。

analytics.js → gtag.js(ga → gtag)イベントトラッキング変更箇所

あたらしいgtag.jsのイベントトラッキングについて

調べる機会があったのでmemo

設計(というか型?パラメータ)とかが大幅に違う模様

Event tracking with gtag.js  |  Analytics for Web (gtag.js)  |  Google Developers
https://developers.google.com/analytics/devguides/collection/gtagjs/events

省略したら勝手に設定してくれるのね。。ふむふむ。私が受ける規模のお客さん仕事ではまぁ省略することはないかなぁ。

イベントトラッキングタグの変更箇所

テンプレ貼っておきます。
続きを読む analytics.js → gtag.js(ga → gtag)イベントトラッキング変更箇所

JS 自分の書いた記述にへぇ〜頭良さそう〜と他人事みたいに思ったのでメモ

二年前くらいのサイトでイベント発火時関数呼ぶ時に一緒に引数渡して実装してたみたい

モーダル開いたときだけ、スクロール位置に合わせて閉じるボタンの位置調整を行うようにしている。
なんかこんな記法あったっけぇ〜?へぇ〜。ってなったのでメモ。

argumentsが別になっていることで、イベントのon offがわかりやすいなって。
引数の宣言抜けてるとかズブズブjQueryじゃねぇかのツッコミは勘弁。

続きを読む JS 自分の書いた記述にへぇ〜頭良さそう〜と他人事みたいに思ったのでメモ

忘れがちなことの記事メモと忙しいので突っ込んどく系の記事メモ

忘れがちなことメモ

【CSS】ul,olのリストを横並びにするときにfloatじゃなくてdisplay:inline-blockを使う方法 | delaymania

【CSS】ul,olのリストを横並びにするときにfloatじゃなくてdisplay:inline-blockを使う方法

display: none; のDOMに対してtransitionを使う際の注意 – Qiita
https://qiita.com/gonshi_com/items/4ae066ef4bea6d519854

backgroundまとめ。ショートハンド、複数指定、各プロパティ – Qiita
https://qiita.com/katsunory/items/1e952d3f5ab2a0306c4d
続きを読む 忘れがちなことの記事メモと忙しいので突っ込んどく系の記事メモ

インスタAPI連携をPHP使わずJSだけで実装する危険性について

JSのみで実装してしまうことの危険性

以前JSのみで実装をしていた人にアカウントに紐づく普段は見れない情報を平文で書いてしまうなんて。。。という話をしていたのですが、なぜだめなのかをうまく説明できなかったのでまとめを探した。

アクセストークンを平文で書いてしまうことの危険性

http://guisekit.com/web/instafeedjs/
http://guisekit.com/web/instagram/

https://syncer.jp/instagram-api-matome#sec-14

続きを読む インスタAPI連携をPHP使わずJSだけで実装する危険性について