FullBg Plugin
flashサイトでよく見かける『windowいっぱいの画像、またはムービー』。
これをjavascriptで実装しよう、と考えました。
そこでFullBgというプラグインを作りました。
Syntax:
var myFullBg = new FullBg(array, [, options]);
Arguments:
- array - 配列要素。例)['a','b','c',....]
- options
- wrap - (element) 入れたい場所 *必須 だいたいdocument.bodyでよいかと
- auto - (boolean : default to false) 自動再生
- wait - (number : default to 3000) 待機時間
- opacity - (number : 0-1, default to 0.5) 背景の透明度
- duration - (number : default to 1000) 変化の速度
- transition - (Fx.transitions 参照) トランジョン
- crossFade - (boolean : default to false) クロスフェードする/しない
- overlay - (boolean : default to true) オーバーレイをかけるかどうか
- random - (boolean : default to true) スタートをランダムにするかどうか
- light - (boolean : default to false) ライトで照らしたような効果をつけるかどうか
memo:
サンプルではTumblr.apiを使用してランダムにしてます。
KeyAction:
- ← - 前へ
- → - 次へ
- h - overlayを隠す
Ex
Tumblr.apiを使う場合
function myFunc(json, url) {
var bgArray = [];
var data = new Element('div', {
'id': 'tumblrTitle'
}).set('html', 'Tumblr : <a href="http://'+json.tumblelog['name']+'.tumblr.com">' + json.tumblelog['title']+'</a>').inject(document.body);
json.posts.each(function(value, key) {
bgArray.push(value['photo-url-500']);
});
var full = new FullBg(bgArray, {
wrap: $(document.body),
crossFade: true,
auto: auto,
opacity:0.5
});
};
function tumblr(url){
var url = 'http://' + url + '.tumblr.com/api/read/json';
var surl = url + '?type=photo&num=50&start=0';
new Asset.javascript(surl,{onload:function(){myFunc(tumblr_api_read)}});
};
フツーに使う場合
var full = new FullBg(['a.jpg','b.jpg','c.gif'], {wrap: $(document.body)});
コメントする