Tips&Tricks

til hjemmesiden, computeren og internettet

Tips & Tricks



Hjerter på hjemmesiden til Valentins dag

Sat på siden 10-02-2006

Vil du gøre hjemmesiden mere romantisk til Valentins dag? Så kan du sætte et javascript på, der får to hjerter til at svæve rundt på siden.

Du skal kopiere scriptet her nedenfor og gemme det i en fil, som du kalder "hearts.js". Du skal nok tage det fra hjemmesiden i stedet for e-mailen, så du undgår linjeskift de forkerte steder i scriptet. Kopier det evt. herfra: www.tips-og-tricks.com/eksempler/hearts.js

// Wandering Hearts Script
// copyright Stephen Chapman, 27th January 2006
// you may copy this script provided that you retain the copyright notice

function start() {
ha = new heart(0,0,'heart0');
hb = new heart(pageWidth()-objWidth('heart1'),0,'heart1');
mover();
}
function moveit() {
ha.moveit();
hb.moveit();
}

// no changes required below
var aDOM = 0, ieDOM = 0, nsDOM = 0; var stdDOM = document.getElementById;if (stdDOM) aDOM = 1; else {ieDOM = document.all; if (ieDOM) aDOM = 1; else {var nsDOM = ((navigator.appName.indexOf('Netscape') != -1)&& (parseInt(navigator.appVersion) ==4)); if (nsDOM) aDOM = 1;}}function xDOM(objectId, wS) {if (stdDOM) return wS ? document.getElementById(objectId).style:document.getElementById(objectId);if (ieDOM) return wS ? document.all[objectId].style: document.all[objectId];if (nsDOM) return document.layers[objectId];}function objWidth(objectID) {var obj = xDOM(objectID,0); if(obj.offsetWidth) return obj.offsetWidth; if (obj.clip) return obj.clip.width; return 0;}function objHeight(objectID) {var obj = xDOM(objectID,0); if(obj.offsetHeight) return obj.offsetHeight; if (obj.clip) return obj.clip.height; return 0;}function objLeft(objectID) {var obj = xDOM(objectID,0);var objs = xDOM(objectID,1);  if(objs.left) return objs.left; if (objs.pixelLeft) return objs.pixelLeft; if (obj.offsetLeft) return obj.offsetLeft; return 0;}function objTop(objectID) {var obj = xDOM(objectID,0);var objs = xDOM(objectID,1);  if(objs.top) return objs.top; if (objs.pixelTop) return objs.pixelTop; if (obj.offsetTop) return obj.offsetTop; return 0;}function setObjVis(objectID,vis) {var objs = xDOM(objectID,1); objs.visibility = vis;}function moveObjTo(objectID,x,y) {var objs = xDOM(objectID,1); objs.left = x; objs.top = y;}function pageWidth() {return window.innerWidth != null? window.innerWidth: document.body != null? document.body.clientWidth:null;}function pageHeight() {return window.innerHeight != null? window.innerHeight: document.body != null? document.body.clientHeight:null;}function posLeft() {return typeof window.pageXOffset != 'undefined' ? window.pageXOffset:document.documentElement.scrollLeft? document.documentElement.scrollLeft:document.body.scrollLeft? document.body.scrollLeft:0;}function posTop() {return typeof window.pageYOffset != 'undefined' ? window.pageYOffset:document.documentElement.scrollTop? document.documentElement.scrollTop: document.body.scrollTop?document.body.scrollTop:0;}function mover() {moveit(); setTimeout('this.mover()',25);}function distance(s,e) {return Math.abs(s-e)}function direction(s,e) {return s>e?-1:1}function rate(a,b) {return a<b?a/b:1}function heart(x,y,obj) {this.xxx = x; this.yyy = y;this.dist = this.distX = this.distY = 0;this.stepx = 2;this.stepy = 2;this.obj = obj;this.nextEnd();this.moveit();setObjVis(this.obj,'visible');}heart.prototype.nextEnd = function() {var eX = Math.floor(Math.random()* (pageWidth()-objWidth(this.obj)));var eY = Math.floor(Math.random()* (pageHeight()-objHeight(this.obj)));this.dist = this.distX = distance(this.xxx,eX);this.distY = distance(this.yyy,eY);this.stepx = 2 * direction(this.xxx,eX) * rate(this.distX,this.distY);this.stepy = 2 * direction(this.yyy,eY) * rate(this.distY,this.distX);}; heart.prototype.moveit = function() {if (this.dist > 0) {this.xxx += this.stepx;this.yyy += this.stepy;this.dist -= Math.abs(this.stepx);}else {this.nextEnd();}var x = (posLeft()+this.xxx);var y = (posTop()+this.yyy);moveObjTo(this.obj,x,y);}

window.onload = start;
window.onscroll = moveit;

......

Scriptet skal kaldes ind i html-koden på din hjemmesiden i området <head> sammen med et stylesheet, sådan her:

......

<script type="text/javascript" src="hearts.js">
</script>
<style>
#heart0,#heart1 {z-Index:999; visibility:hidden; position:absolute; top:0; left:0; width:69px;}
</style>

.....

Gem billedet "heart.gif" samme sted som din hjemmeside ved at højreklikke på det og vælge Gem billede som.

Hjerte

Indsæt til sidst denne kode et vilkårligt sted i <body>-delen af din hjemmeside:

.......

<div id="heart0"><img src="heart.gif" width="69" height="60" alt="heart" /></div><div id="heart1"><img src="heart.gif" width="69" height="60" alt="heart" /></div>

....

Upload det hele til serveren, og send din elskede linket ;-)

Kunne du lide tippet? Abonner gratis på mine nyhedsmails og få friske tips hver uge: Tilmelding til Tips og tricks
Lige nu: Få e-bogen "701 Tips og Tricks" gratis (normalpris $11,83) ved tilmelding.


|