Everyday Pieces ::
  • Webサービス
  • ブログパーツ
  1. ホーム
  2. プログラミング

toastrを使ってみた

2016年5月8日 プログラミング

 先日、
これやこれに書いたように、
Geolocationが許可されない場合に、
freeGeoIPで代用したことを示すために
あえてアラート表示は残したのですが、
Chromeだと毎回出るのがちょっとウザイ。

 window.alert を使うとエラー表示がお手軽にやれるのですが、
モーダルなダイアログになっているので、
ボタンを押さないと先へ進まない。

 言わば、
進行がブロックされる通知表示なわけで、
ブロックされない通知表示なら
スマートな感じになるんじゃないかな、
と思って探してみたら、
こちらのtoastrというのを見つけました。

 こちらの動作デモを試してみると、
スタイリッシュでなかなか良さげな感じです。

 ちなみに、
こういうのをトースト表示と言うらしい。
両面焼いた食パンをトーストと言いますが、
なんか関係があるのでしょうか(^_^;)

 使い方はしごく簡単。
cssとjsを読み込んで、

toastr.error('message');

とか書くだけ。
cssとjsについてはCDN版もあるので、
ファイルを自分のサーバーに置かなくても行けますね。
ただ、
jQueryに依存しているので、
あらかじめ読んでおく必要があります。

 オプションも豊富です。
こちらの動作デモで確認できます。
timeout で自動消去される時間を設定しますが、
トースト表示中にマウスカーソルをhoverさせると、
消去されずに表示され続けるようになっています。
timeoutしても表示されたままになりますが、
hoverを解除すると自動消去されます。
その時間は Extended time out で設定するようです。

 v2.1.2における、
オプションのデフォルト値は以下のようになってました。

function getDefaults() {
    return {
        tapToDismiss: true,
        toastClass: 'toast',
        containerId: 'toast-container',
        debug: false,

        showMethod: 'fadeIn', //fadeIn, slideDown, and show are built into jQuery
        showDuration: 300,
        showEasing: 'swing', //swing and linear are built into jQuery
        onShown: undefined,
        hideMethod: 'fadeOut',
        hideDuration: 1000,
        hideEasing: 'swing',
        onHidden: undefined,
        closeMethod: false,
        closeDuration: false,
        closeEasing: false,

        extendedTimeOut: 1000,
        iconClasses: {
            error: 'toast-error',
            info: 'toast-info',
            success: 'toast-success',
            warning: 'toast-warning'
        },
        iconClass: 'toast-info',
        positionClass: 'toast-top-right',
        timeOut: 5000, // Set timeOut and extendedTimeOut to 0 to make it sticky
        titleClass: 'toast-title',
        messageClass: 'toast-message',
        escapeHtml: false,
        target: 'body',
        closeHtml: '',
        newestOnTop: true,
        preventDuplicates: false,
        progressBar: false
    };
}

 また、
こちらにあるようにCSSで上書きすれば、
アイコンを好きなようにカスタマイズできるようです。
iconClass オプションをいじっても同様にやれそうな感じっぽい。

関連記事
three.jsで遊んでみる(2)

コメントする キャンセル

アドレスが公開されることはありません。が付いている欄は必須項目です。

投稿ナビゲーション

Chrome 50 と Geolocation
Amazonで送料無料にする裏技(^_^;)

カテゴリー

WordPress つぶやき トピック プログラミング

タグ

AS3 enchant.js FamilyTreeVis Flash Geolocation gif.js kinect Linux MMD MoneyTrackNote notifier.js OpenCV PDFカレンダー RISC-V three.js セキュリティ テーマ自作 ブログパーツ 動物 動画 麻雀

アーカイブ

© katwat