összeakadtak a .js fájlok
hali,
A helyzte az, hogy írtam két scriptet.Az egyik egy analóg óra a másik pedig egy galéria. Kiraktam mindkettőt egy-egy .js fájlba külön külön.Ezútán hivatkoztam a weboldalon rá így:
külön külön megy mindegyik de ha egy oldalra akarom berakni mind a kettőt akkor már nem megy csak az amelyiket legalulra írtam.Eddig azt hittem értek hozzá, de most ezzel beszorultam és szeretném a segítségét kérni annak aki már találkozott már ilyennnel.
elöre is köszi.:D
Medve
■ A helyzte az, hogy írtam két scriptet.Az egyik egy analóg óra a másik pedig egy galéria. Kiraktam mindkettőt egy-egy .js fájlba külön külön.Ezútán hivatkoztam a weboldalon rá így:
<head>
<script language="JavaScript" src="ora.js"></script>
<script language="JavaScript" src="galeria.js"></script>
</head>
elöre is köszi.:D
Medve
body onload
attachEvent
nem jó így sajnos így se. A
A html oldalon így hivatkozok rá:
<head>
<title>galeria</title>
<meta HTTP-EQUIV="Content-Style-Type" CONTENT="text/css">
<link rel=Stylesheet href="stiluslap.css" type="text/css" MEDIA=screen>
<script type="text/Javascript" src="galeria.js"></script>
<script type="text/Javascript" src="ora.js"></script>
</head>
<body onload="analogora(800,600);galeria(280,300)">
az óra az ugy mükszik hogy elöbb kirakja körbe a számokat majd csinál egy csomó mutatót "."-okból. a galeria pedig létrehoz egy keret div-et amibe belerak egy tartalom div-et és abba pedig kicsi 100*100-as képeket.A jelenlegi kóddal azt csinálja kirakja a számokat az órához és a galeriát is de a mutatók elvesznek.Mondtátok elegánsabb lenne egy eseménykezelőt használni.Mutatnátok nekem egy eseménykezelőt, ha szépen kérem?
Amugy én csak ismereteket szerzek webprogiból Medve néven és nem szoktam játszani ezzel a névvel.
más a probléma
melyik az igaz?
igazából mindkettő. mert ugye
mert ugye egyszer lefut az óra és kidobja a hátlapját aztán szerintem a galeria.js felülírja az egészet és azért nem mozog az óra utána.
.
okés, ide jó lesz?
jo ezt igennek
szoval a galeria.js az a következőképpen néz ki:
var kepek = new Array();
var szoveg = new Array();
var n;
var tempo=10;
var oszlop=3;
function galeria(x,y){
var body,keret,tartalom,sor,form,gomb1,gomb2,br;
var kepx=30;
var kepy=30;
var db=0;
body=document.getElementsByTagName('body')[0];
form=document.createElement('form');
form.setAttribute('style','position:absolute;left:'+(x+oszlop*130+40)+'px;top:'+y+'px;');
gomb1=document.createElement('input');
gomb1.setAttribute('type','button');
gomb1.setAttribute('onMouseDown','fel()');
gomb1.setAttribute('onMouseUp','stop()');
gomb1.setAttribute('value','fel');
form.appendChild(gomb1);
br=document.createElement('br');
form.appendChild(br);
gomb2=document.createElement('input');
gomb2.setAttribute('type','button');
gomb2.setAttribute('onMouseDown','le()');
gomb2.setAttribute('onMouseUp','stop()');
gomb2.setAttribute('value','le ');
form.appendChild(gomb2);
keret=document.createElement('div');
keret.setAttribute('style','width:'+(oszlop*130+30)+'px;height:400px;position:absolute;left:'+x+'px;top:'+y+'px;border:2px ridge white;overflow:hidden;');
keret.setAttribute('ID','keret');
tartalom=document.createElement('div');
tartalom.setAttribute('style','position:absolute;left:0px;top:0px;');
tartalom.setAttribute('ID','tartalom');
init();
sor=kepek.length/oszlop;
for (var j=0; j<= sor;j++){
for (var i=0; i<=oszlop-1 ;i++){
kepletrehozo('kep'+db,kepek[db],szoveg[db],tartalom,100,100,kepx,kepy);
kepx=kepx+130;
db++;
}
kepy=kepy+130;
kepx=30;
}
keret.appendChild(tartalom);
body.appendChild(form);
body.appendChild(keret);
}
function init(){
kepek[0]="Kepek/album/1.jpg";
kepek[1]="Kepek/album/2.jpg";
kepek[2]="Kepek/album/3.jpg";
kepek[3]="Kepek/album/4.jpg";
kepek[4]="Kepek/album/5.jpg";
kepek[5]="Kepek/album/6.jpg";
kepek[6]="Kepek/album/7.jpg";
kepek[7]="Kepek/album/8.jpg";
kepek[8]="Kepek/album/9.jpg";
kepek[9]="Kepek/album/10.jpg";
kepek[10]="Kepek/album/11.jpg";
kepek[11]="Kepek/album/12.jpg";
kepek[12]="Kepek/album/13.jpg";
n=kepek.length;
szoveg[0]="fika1";
szoveg[1]="fika2";
szoveg[2]="fika3";
szoveg[3]="fika4";
szoveg[4]="fika5";
szoveg[5]="fika6";
szoveg[6]="fika7";
szoveg[7]="fika8";
szoveg[8]="fika9";
szoveg[9]="fika10";
szoveg[10]="fika11";
szoveg[11]="fika12";
szoveg[12]="fika13";
}
function kepletrehozo(nev,eleresiut,cim,tartalom,a,b,x,y){
var kep;
kep=document.createElement('img');
kep.setAttribute('style','width:'+a+'px;height:'+b+'px;position:absolute;left:'+x+'px;top:'+y+'px;');
kep.setAttribute('onClick','mutatnagyban()');
kep.setAttribute('title',cim);
kep.setAttribute('ID',nev);
kep.setAttribute('src',eleresiut);
tartalom.appendChild(kep);
}
function fel(){
if (window.lefele){window.clearInterval(lefele);}
if (parseInt(tartalom.style.top) <= -10){
tartalom.style.top=parseInt(tartalom.style.top)+tempo;
felfele=window.setInterval(fel,1000);
}
}
function le(){
if (window.felfele){){window.clearInterval(felfele);}
if (parseInt(tartalom.style.top) >= n/oszlop*130*(-1)){
tartalom.style.top=parseInt(tartalom.style.top)-tempo;
lefele=window.setInterval(le,1000);
}
}
function stop(){
if (window.lefele){window.clearInterval(lefele);}
if (window.felfele){window.clearInterval(felfele);}
}
function mutatnagyban(){
}
az ora.js pedig így :
var most=new Date();
var M=5;
var P=4;
var O=3;
var kar=".";
var tav=65;
var szin="#990000";
function analogora(x,y){
var body = document.getElementsByTagName('body')[0];
var oralap = document.createElement('DIV');
oralap.setAttribute('style', 'position:absolute;top:'+y+'px;left:'+x+'px;width:140px;height:150px;');
oralap.setAttribute('id', 'oralap');
body.appendChild(oralap);
init(oralap);
hatlap(oralap);
var mpercek = window.setInterval(masodperc, 1000);
var percek = window.setInterval(perc, 1000);
var orak = window.setInterval(ora, 1000);
}
function init(oralap){
var mnev, pnev, onev , item, b;
for (var i=1 ; i <= M ; i++){
mnev = "m"+i;
item = document.createElement('DIV');
item.setAttribute('style', 'position:absolute;color:#ff0000;font-size:20pt;top:0;left:0;');
item.setAttribute('id', mnev);
b = document.createElement('B');
b.appendChild(document.createTextNode(kar));
item.appendChild(b);
oralap.appendChild(item);
window[mnev] = item;
}
for (var i=1 ; i <= P ; i++){
pnev="p"+i;
var item = document.createElement('DIV');
item.setAttribute('style', 'position:absolute;color:'+szin+';font-size:20pt;');
item.setAttribute('id', pnev);
b = document.createElement('B');
b.appendChild(document.createTextNode(kar));
item.appendChild(b);
oralap.appendChild(item);
window[pnev] = item;
}
for (var i=1 ; i <= O ; i++){
onev = "o"+i;
item = document.createElement('DIV');
item.setAttribute('style', 'position:absolute;color:'+szin+';font-size:20pt;');
item.setAttribute('id', onev);
b = document.createElement('B');
b.appendChild(document.createTextNode(kar));
item.appendChild(b);
oralap.appendChild(item);
window[onev] = item;
}
item = document.createElement('DIV');
item.setAttribute('style', 'position:absolute;color:'+szin+';font-size:20pt;left:68px;top:55px;');
item.setAttribute('id', 'kozeppont');
b = document.createElement('B');
b.appendChild(document.createTextNode(kar));
item.appendChild(b);
oralap.appendChild(item);
}
function masodperc(most){
var bal,fent;
mszog = - most.getSeconds() * Math.PI / 30 ;
bal=Math.sin(mszog);
fent=Math.cos(mszog);
m1.style.top=(fent*10)+tav - 10+ "px";
m1.style.left=((bal*10)+3)+tav + "px";
m2.style.top=(fent*20)+tav -10 + "px";
m2.style.left=((bal*20)+3)+tav + "px";
m3.style.top=(fent*30)+tav- 10 + "px";
m3.style.left=((bal*30)+3)+tav + "px";
m4.style.top=(fent*40)+tav -10 + "px";
m4.style.left=((bal*40)+3)+tav + "px";
m5.style.top=(fent*50)+tav- 10 + "px";
m5.style.left=((bal*50)+3)+tav + "px";
}
function perc(most){
var bal,fent;
mszog = - most.getMinutes() * Math.PI / 30 + Math.PI;
bal=Math.sin(mszog);
fent=Math.cos(mszog);
p1.style.top=(fent*10)+tav- 10 + "px";
p1.style.left=((bal*10)+3)+tav + "px";
p2.style.top=(fent*20)+tav- 10 + "px";
p2.style.left=((bal*20)+3)+tav + "px";
p3.style.top=(fent*30)+tav- 10 + "px";
p3.style.left=((bal*30)+3)+tav + "px";
p4.style.top=(fent*40)+tav- 10 + "px";
p4.style.left=((bal*40)+3)+tav + "px";
}
function ora(most){
var bal,fent;
mszog = - most.getHours() * (2*Math.PI / 12) + Math.PI;
bal=Math.sin(mszog);
fent=Math.cos(mszog);
o1.style.top=(fent*10)+tav- 10 + "px";
o1.style.left=((bal*10)+3)+tav + "px";
o2.style.top=(fent*20)+tav- 10 + "px";
o2.style.left=((bal*20)+3)+tav + "px";
o3.style.top=(fent*30)+tav- 10 + "px";
o3.style.left=((bal*30)+3)+tav + "px";
}
function hatlap(oralap){
var szog=0;
var bal, fent, item, b;
for (var i=12; i >= 10 ;i--){
bal=-Math.sin(szog)*60+tav;
fent=-Math.cos(szog)*60+tav;
item = document.createElement('DIV');
item.setAttribute('style', 'position:absolute;top:'+fent+'px;left:'+bal+'px;color:'+szin+';font-size:15pt;');
item.setAttribute('id', 'ora'+i);
b = document.createElement('B');
b.appendChild(document.createTextNode(i));
item.appendChild(b);
oralap.appendChild(item);
szog=szog+(Math.PI/6);
}
for (var i=9; i >= 1 ;i--){
bal=-Math.sin(szog)*60+tav;
fent=-Math.cos(szog)*60+tav;
item = document.createElement('DIV');
item.setAttribute('style', 'position:absolute;top:'+fent+'px;left:'+bal+'px;color:'+szin+';font-size:15pt;');
item.setAttribute('id', 'ora'+i);
b = document.createElement('B');
b.appendChild(document.createTextNode(" "+ i));
item.appendChild(b);
oralap.appendChild(item);
szog=szog+(Math.PI/6);
}
}
és ugye így hivatkozok rá a HTMl részben:
<head>
<title>galeria</title>
<script type="text/Javascript" src="ora.js"></script>
<script type="text/Javascript" src="galeria.js"></script>
</head>
<body onload="analogora(800,600),galeria(280,300)">
Sajnos ilyen nálam is előfordult.
.
function masodperc(most){
var bal,fent;
mszog = - most.getSeconds() * Math.PI / 30 ;
bal=Math.sin(mszog);
fent=Math.cos(mszog);
m1.style.top=(fent*10)+tav - 10+ "px";
m1.style.left=((bal*10)+3)+tav + "px";
m2.style.top=(fent*20)+tav -10 + "px";
m2.style.left=((bal*20)+3)+tav + "px";
m3.style.top=(fent*30)+tav- 10 + "px";
m3.style.left=((bal*30)+3)+tav + "px";
m4.style.top=(fent*40)+tav -10 + "px";
m4.style.left=((bal*40)+3)+tav + "px";
m5.style.top=(fent*50)+tav- 10 + "px";
m5.style.left=((bal*50)+3)+tav + "px";
}
var most=new Date(); az elején
function masodperc(most){ -ban miért van ott a "most"??
a functionnal új értéket adsz a mostnak(a semmit), úgyhogy a semmiből nem veszi ki a másodpercet. Ennek ellenére nem sikerült működésre bírni, van benne 1000 hiha
function init() 2x
Nem néztem végig, csak a függvényneveken szaladtam át. Ja ha kódot teszel a hozzászólásokba akkor használd a kódszinezőt. (olvasd el a hozzászólás doboz alján található kis szöveget és esetleg a a További lehetőségek oldalon a a teljes helpet...)