DOM操作をする際にクロスブラウザ対応を便利にしてくれるJavaScript「flow.js」

0

20110629-02

ブラウザの互換性を気にせずDOM操作やアニメーション、クッキーを操作したい際に使えるJavaScript「flow.js」をご紹介。

最近ではjQueryオンリーのような気もしますが、いろいろと機能を追加しようとして複数のプラグインを導入すると、だんだん動作が重くなってきます。

なるべく軽量のものが使いたい際の選択肢の一つとして覚えておくために自分用メモです。
まだ試してはいないのですがIE6やSafari2などのモダンブラウザでも動くようなので、なかなか良さそうです。

以下のような機能があるとの事。

  • DOM Level 3の API操作
  • アニメーション処理
  • クッキー管理
  • フォーム管理の簡素化
  • XMLHttpRequestのクロスブラウザ対応

ブラウザにはそれぞれ癖があるので、こういったライブラリを使用して間違いや非サポートの処理をしないようにしたいですね。

サンプル

class属性にcheckedがあるulにliを追加する方法

var uls = document.getElementsByClassName("checked").filter(function(e) {
    return e.nodeName.toLowerCase() == "ul";
});

var lis = [];
uls.forEach(function(ul) {
    ul.getElementsByTagName("li").forEach(function(li) {
        lis.push(li);
    });
});

class属性にcheckedがあるulのliを取得する方法

var lis = document.getByClass("checked").filter(function(e) {
    return e.elementName() == "ul";
}).getByTag("li");

同上。class属性にcheckedがあるulのliを取得する方法

var lis = document.querySelectorAll("ul.checked li");

ライセンスはCCライセンスのようです。
詳細&ダウンロードは下のリンクからどうぞ。

ドラッグ操作がIE6からiPhone/Androidまで軽快に動くJavaScript「Dragdealer JS」が良さそうな件

0

20110617 01

ドラッグできるスクリプトは知ってる方も多いかもしれませんが、これは知らなかったのでメモ。

Dragdealer JS」はIE6からiPhoneやAndroidでも軽快にドラッグできるJavaScriptですよ。
クロスブラウザ対応するスクリプトは覚えておいてもよいですよね。

スライダー

20110617 02

↑横スライダーの位置によってフォントサイズを変更するサンプル

スクロールバー

20110617 03

↑赤い部分をドラッグする事でコンテンツをスクロールさせてます。

画像スクロール

20110617 04

↑画像をドラッグするサンプル。
範囲外にドラッグすると反発するように戻るようになります。

これらが全てクロスブラウザで動作するので、ドラッグするインターフェースを作る際に良さそうです。
デモ&ダウンロードは下のリンクから確認ください。

Canvasでストライプ画像を手軽に作れる「cicadaJS」

0

20110614 01

Canvasでストライプ画像を手軽に作れる「cicadaJS

サイトの背景や、ちょっとしたアクセントに使えそうだったのでご紹介。

要素をストライプで装飾してくれるようになります。
カラフルな見た目で華やかになりますね。

色や帯の幅は調整可能ですよ。

使い方

まずは、Canvasを描画するオブジェクトを指定します。

var cancan = document.getElementById('stripes');

次に、ストライプのカラーと帯の幅を指定します。

cancan.cicada([
	{
		width:53,
		color: [ 'rgba(239, 234, 211, 0.5)', 'rgba(191, 169, 124, 0.5)' ],
		alignment: 'middle'
	}, {
		width: 37,
		color: 'rgba(145, 0, 42, 0.5)',
		alignment: 'left'
	}, {
		width: 29,
		color: [ 'rgba(125, 167, 180, 0.5)', 'rgba(75, 119, 130, 0.5)' ],
		alignment: 'left'
	}
])
  • width;数値、タイル領域の幅を指定します
  • color:rgbで指定します。Arrayで複数指定も可
  • alignment:’left’,'middle’,'right’のどれかを指定します。

デモ

http://matthewlein.com/cicadajs/demos/bg-random.html

↑ランダムにストライプを作成してくれますよ。

手軽にオシャレにしたい場合に良さそうです。
興味のある方は下のリンクからどうぞ。

IE6でも動作する背景画像やテキストにグレーフィルタをかけるjavascript「GRAYSCALE.JS」

0

20110607 01

画像やテキストにグレーフィルタをかけるjavascript「GRAYSCALE.JS」をご紹介。

IE系ではフィルターを適用し、
それ以外のブラウザではCanvasを使用してエフェクトを実装しているようです。

画像、背景画像、テキストカラーがグレースケールで表示されるので、
色がわからなくても情報が伝える事が出来る、ウェブアクセシビリティテストに使えそうですね。

詳細&ダウンロードは下のリンクからどうぞ。

node.jsで作られた簡易CSM「Calipso」

0

20110525 01

オープンソースのCMSと言えばもはやWordpressがスタンダートですが、本日紹介する「Calipso」はWordPressとDrupalにインスパイアされたCMSだ。

コンテンツのメンテナンスをするのにCMSを使うのは良くあるが、
最近話題のnode.jsを使ってみたいという場合にどうだろうか。

サーバーサイドにnode.jsとMongoDBで動くように作られており、ちょっとしたサイトを構築するのに更新が簡単だろう。

20110525 02

↑プロフィールの編集画面

日本語も問題なく入力することができるようになっているので、サイト内の一部の更新をする。そんな場合にマッチする便利なCMSではないだろうか。

容量が大きいページを開く際にプリローダーを表示するJavaScript「QueryLoader」

0

20110520 16

容量が大きいページを開く際にプリローダーを表示するJavaScript「QueryLoader」をご紹介。

大きな画像ファイルがたくさんある場合や、プログラムから動的に画像出力する際など、表示に時間がかかる際に使えるスクリプトになっています。

[JS]ちょっとした処理に使えるマイクロフレームワークを50以上集めた「microjs」

0

20110506 01

特定の用途だけに特化したフレームワークが必要な場合、シンプルなもので良いのではないだろうか。

microjs」では、DOM構築後のタイミングで処理を実行したいだけのフレームワークやBase64処理をするだけの物、ブラウザ判別するだけの物など、
ちょっとした時に使えるフレームワークが50以上揃っています。

以下にいくつか気になった物をご紹介。

[JS]画像にレトロ調のエフェクトがかけれるjQueryプラグイン「vintageJS」

0

20110501 01

JavaScriptだけで画像にレトロ調のエフェクトがかけれるライブラリを見つけたのでご紹介。

一瞬で画像をinstagr.am風にする事が可能です。

サイトを訪れるとデモがあり、自由に画像アップロードして試す事ができます。

使ってみた様子

20110501 02

↑元写真

20110501 03

↑エフェクト後。これがJSだけで処理できるのがすごい。

使い方

githubからファイルをダウンロードして、JSとCSSを読み込みます。

<script src="src/jquery.js"></script>
<script src="src/vintage.js"></script>
<link rel="stylesheet" type="text/css" 
href="css/vintagejs.css" media="all" />

その後、エフェクトを適用したい画像を指定するだけです。

$(function () {
    $('img.vintage').click(function () {
        $(this).vintage();
    });
});

動作するブラウザはFF3+、Chrome9+、Safari5+、Opera11+、IE9+との事。

興味のある方は下のリンクからどうぞ。

ウインドウサイズによって読み込むCSSを自動で切り替えてくれる「Adapt.js」

0

20110418 10

ウインドウサイズによって横幅やカラム数を変更したい。
そんな時につかえるのが「Adapt.js」。
ブラウザの横幅をチェックして、読み込むCSSを切り替えてくれるJavaScriptライブラリだ。

使い方

ウインドウサイズと、読み込むCSSを指定するだけでOKです。

例えば、760px以下と、980px以下、1280以下でCSSを切り替える場合には、
以下のように指定します。

・・・
range: [
    '760px            = mobile.css',
    '760px  to 980px  = 720.css',
    '980px  to 1280px = 960.css',
    '1280px           = fluid.css'
  ]
・・・

最近はウインドウサイズに合わせて幅や高さをフレキシブルに広げる手法がたくさん使われているので、こういったライブラリを覚えておくと良さそうだ。

JavaScript開発にalertを使っている人必見!ログ出力ライブラリ「Blackbird」

0

20110412 01

JavaScriptでログを表示するのに使えるライブラリ「Blackbird」のご紹介。

出力したいメッセージを指定するだけできれいに整形して表示してくれます。

例えば、以下のようなJavaScriptを実行してみます。

log.debug( 'this is a debug message' );
log.info( 'this is an info message' );
log.warn( 'this is a warning message' );
log.error( 'this is an error message' );

20110412 03

↑すると、こんな感じで素敵に表示してくれちゃいます。
アイコンと色で視覚的にメッセージを区別することができるので、後から見分けるのも簡単です。

使い方

使い方は簡単で、ファイルをダウンロードした後、headタグ内でJSとCSSを読み込むだけでOKです。

<html>
  <head>
    <script type="text/javascript" src="blackbird.js"></script>
    <link type="text/css" rel="Stylesheet" href="blackbird.css" />
  </head>

ほとんどのメジャーなブラウザで動作するようになっています。
IE6にも対応していますので、あのブラウザだけ動かないんだけど、、、
と言った時にも使えそうです。

便利なキーボードショートカット

20110412 02

ライブラリにはショートカットも含まれており、F2で表示非表示の切り替え、
Shift + F2でボックスの位置を変更、 Alt + Shift + F2でログメッセージをクリアしてくれます。

サイトには各ショートカットを実行するブックマークレットも有りますので、いちいち覚える必要もありません。

名前空間の変更も!

とは言っても既存のサイトでlogという名前をすでに使っているよ!という場合もあるかと思いますが、心配いりません。

簡単に名前空間を変更できるようになっています。

blackbird.jsを開いて11行目を変更すればOKです。

var NAMESPACE = 'log';

↑変更前

var NAMESPACE = 'myCustomLog';

↑これでmyCustomLog.debug(’hoge’);が実行できるようになります。

ダウンロードは下のリンクからどうぞ。