Layer kreisförmig bewegen...(sin/cos)
Dominique /\/ick Uhe
- dhtml
Hallo erstmal
also folgendes:
ich habe einen Layer "test"
und mit folgender funktion sollte es doch eigentlich
klappen
function test()
{
do
{
degtorad = Math.round((i * (Math.pi * 2)) / 360);
document.test.top=Math.round((Math.sin(degtorad))* 40)+300;
document.test.left=Math.round((Math.cos(degtorad))* 20)+150;
if (i==359) {i=1};
i = i + 1;
}
while (i < 360);
}
Netscape sagt: Can't convert document.test.top to integer...
(wie kann ich den Variablen typen ändern
hab ich nirgendwo in Selfhtml gefunden)
und wenn ich die function für IE umschreibe schmiert der schlicht und einfach ab... :\
naja...
ich hoffe jemand kann mir helfen...
ist abba auch nur wieder einer meiner bekloppten Versuche... ;)
cu all
//ick
Hallo Dominique,
schau mal hier rein:
http://www.web-as.de/workshop/java/
Da findest Du einen 'ganz fiesen' Button, der Dir NIE unter die Maus kommt ;-)
Wie bei JavaScript ueblich, findest Du den Quellcode im Cache Deines Browsers.
Natuerlich inclusive einer Versionsumschaltung fuer Netscape und M$.
Schaetze mal, dass Du damit zurecht kommst.
Viel Spass noch
Norbert
Mit einer while - do - Schleife waere das sowieso nichts geworden. Aber ich poste Dir hier mal einen kompletten Code:
===============================
<html>
<head>
<title>Fenster</title>
<script language="JavaScript">
<!--
var x=0;
var y=0;
var w=0;
function Kreis() {
w = w + 360/5000;
if(w > 360) w=0;
x = Math.sin(w)*80 + 220;
y = Math.cos(w)*80 + 220;
window.moveTo(x,y);
window.focus();
window.setTimeout('Kreis()',10);
}
//-->
</script>
</head>
<body bgcolor="#000033" onload="Kreis()">
Viel Spass - kann man sicher leicht auf eigene Beduerfnisse anpassen.
Thomas Hieck