Love HINATA♥
by
tyage
2010-08-27 [2010/08/27 17:52:05]
ブラウザに一台ひなったー(@hinatter)を持ち歩こう!
@@ -61,4 +61,12 @@
}).appendTo(document.body)
}, 1000)
+ // ひなったー♥
+ var words = 'ひなったー♥'.split(''),
+ body = $(document.body),
+ i = 0,
+ l = words.length;
+ body.html(
+ body.html().replace(/[ぁ-んア-ンヲ-゚]/g,function(){return words[i=++i%l];})
+ );
})();
/*
* @title Love HINATA♥
* @description ブラウザに一台ひなったー(@hinatter)を持ち歩こう!
* @include http://*
* @license MIT License
* @require jQuery
*/
(function () {
var data = "data:image/jpeg;base64,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";
$.fn.love = function () {
return $(this).each(function () {
$(this).mousemove(function (e) {
$('<p />', {
text: '♥'
}).css({
position: 'absolute',
top: e.pageY + (Math.random() * 50) - (Math.random() * 50),
left: e.pageX + (Math.random() * 50) - (Math.random() * 50),
color: 'red'
}).appendTo(document.body).fadeOut('slow');
});
})
};
// ひなったー♥
$('img').each(function () {
$(this).width($(this).width()).height($(this).height()).attr('src', data).love()
});
// くるくるひなったー♥
var hinatter = $('<img />').attr('src', data).css({
width: 50,
height: 50,
position: 'absolute'
}).appendTo(document.body);
var i = 0;
$(document).mousemove(function (e) {
i++;
hinatter.css({
top: e.pageY + Math.sin(i*0.1)*50,
left: e.pageX + Math.cos(i*0.1)*50
})
})
// 落下ひなったー♥
window.setInterval(function () {
$('<img />').attr('src', data).css({
width: 50,
height: 50,
position: 'absolute',
top: -50,
left: Math.random() * ($(document.body).width() - 50)
}).love().animate({
top: $(document.body).height() - 50
}, 5000, function () {
$(this).delay(5000).fadeOut('slow', function () {
$(this).remove()
})
}).appendTo(document.body)
}, 1000)
// ひなったー♥
var words = 'ひなったー♥'.split(''),
body = $(document.body),
i = 0,
l = words.length;
body.html(
body.html().replace(/[ぁ-んア-ンヲ-゚]/g,function(){return words[i=++i%l];})
);
})();
- Permalink
- このページへの個別リンクです。
- RAW
- 書かれたコードへの直接のリンクです。
- Packed
- 文字列が圧縮された書かれたコードへのリンクです。
- Userscript
- Greasemonkey 等で利用する場合の .user.js へのリンクです。
- Loader
- @require やソースコードが長い場合に多段ロードする Loader コミのコードへのリンクです。
- Metadata
- コード中にコメントで @xxx と書かれたメタデータの JSON です。