程序员用代码来庆祝相恋一周年纪念日
var $window = $(window), gardenCtx, gardenCanvas, $garden, garden;
var clientWidth = $(window).width();
var clientHeight = $(window).height();
$(function () {
// setup garden
$loveHeart = $( #loveHeart
var offsetX = $loveHeart.width() / 2;
var offsetY = $loveHeart.height() / 2 - 55;
$garden = $( #garden
gardenCanvas = $garden[0];
gardenCanvas.width = $( #loveHeart ).width();
gardenCanvas.height = $( #loveHeart ).height()
gardenCtx = Context( 2d
gardenCtx.globalCompositeOperation = lighter
garden = new Garden(gardenCtx, gardenCanvas);
$( #content ).css( width , $loveHeart.width() + $( #code ).width());
$( #content ).css( height , Math.max($loveHeart.height(), $( #code ).height()));
$( #content ).css( margin-top , Math.max(($window.height() - $( #content ).height()) / 2, 10));  $( #content ).css( margin-left , Math.max(($window.width() - $( #content ).width()) / 2, 10));  // renderLoop
setInterval(function () {
}, wSpeed);
电脑表白程序代码
$(window).resize(function() {
var newWidth = $(window).width();
var newHeight = $(window).height();
if (newWidth != clientWidth newHeight != clientHeight) {
function getHeartPoint(angle) {
var t = angle / Math.PI;
var x = 19.5 * (16 * Math.pow(Math.sin(t), 3));
var y = - 20 * (13 * s(t) - 5 * s(2 * t) - 2 * s(3 * t) - s(4 * t));  return new Array(offsetX + x, offsetY + y);
function startHeartAnimation() {
var interval = 50;
var angle = 10;
var heart = new Array();
var animationTimer = setInterval(function () {
var bloom = getHeartPoint(angle);
var draw = true;
for (var i = 0; i heart.length; i++) {
var p = heart[i];
var distance = Math.sqrt(Math.pow(p[0] - bloom[0], 2) + Math.pow(p[1] - bloom[1], 2));
if (distance Garden.options.bloomRadius.max * 1.3) {
draw = false;
break;
if (draw) {
heart.push(bloom);
clearInterval(animationTimer);
showMessages();
} else {
angle += 0.2;
}, interval);
(function($) {
$.fn.typewriter = function() {
this.each(function() {
var $ele = $(this), str = $ele.html(), progress = 0; $ele.html(‘‘);
var timer = setInterval(function() {
var current = str.substr(progress, 1);
if (current == ‘ ‘) {
progress = str.indexOf(‘ ‘, progress) + 1;
} else {
progress++;
$ele.html(str.substring(0, progress) + (progr ess 1 ? ‘_’ : ‘‘)); if (progress = str.length) {
clearInterval(timer);
}, 75);
return this;
})(jQuery);
function timeElapse(date){
var current = Date();
var seconds = (Date.parse(current) - Date.parse(date)) / 1000;  var days = Math.floor(seconds / (3600 * 24));
seconds = seconds % (3600 * 24);
var hours = Math.floor(seconds / 3600);
if (hours 10) {
hours = 0 + hours;
seconds = seconds % 3600;
var minutes = Math.floor(seconds / 60);
if (minutes 10) {
minutes = 0 + minutes;
seconds = seconds % 60;
if (seconds 10) {
seconds = 0 + seconds;
var result = span ‘#messages’).fadeIn(5000, function() {
showLoveU();
function adjustWordsPosition() {
$(‘#words’).css( position , absolute
$(‘#words’).c ss( top , $( #garden ).position().top + 195);
$(‘#words’).css( left , $( #garden ).position().left + 70);
function adjustCodePosition() {
$(‘#code’).css( margin-top , ($( #garden ).height() - $( #code ).height()) / 2); function showLoveU() {
$(‘#loveu’).fadeIn(3000);
}