Avatar billede mysenstein Novice
08. maj 2005 - 14:41 Der er 4 kommentarer og
1 løsning

2 ens java scripts på samme side - kan man det ?

Jeg vil med det samme sige at jeg ved meget lidt om javascript.

Jeg vil gerne køre 2 ens javascripts på den samme side. Scriptets funktion er at skifte billeder ud på hjemmesidens forside, og vedkomne jeg laver siden for vil gerne have symetri på forsiden. Scriptet har jeg hentet på DynamicDrive.com, så ja jeg er sådan en copy/paste type.

Jeg har prøvet at pakke scriptet ned som 2 *.js fil med forskellige navne, og så skrive det her i htmlkoden:

<script type="text/javascript" language="javascript" src="prleft.js"></script>

<script type="text/javascript" language="javascript" src="prright.js"></script>

Men det hjalp heller ikke. Jeg har afsøgt forskellige fora, men alle rådene drejer sig om 2 forskellige scripts.

Selve sciptet ser sådan her ud:

<script language="JavaScript1.2" type="text/javascript">

/***********************************************
* Fade-in image slideshow script- © Dynamic Drive DHTML code library (www.dynamicdrive.com)
* This notice MUST stay intact for legal use
* Visit Dynamic Drive at http://www.dynamicdrive.com/ for full source code
***********************************************/

var slideshow_width='150px' //SET IMAGE WIDTH
var slideshow_height='200px' //SET IMAGE HEIGHT
var pause=4000 //SET PAUSE BETWEEN SLIDE (3000=3 seconds)

var fadeimages=new Array()
//SET 1) IMAGE PATHS, 2) optional link, 3), optional link target:
fadeimages[0]=["pics/message_3.jpg", "redirect3.htm", ""] //plain image syntax
fadeimages[1]=["pics/message_4.jpg", "redirect4.htm", ""] //image with link syntax

////NO need to edit beyond here/////////////

var preloadedimages=new Array()
for (p=0;p<fadeimages.length;p++){
preloadedimages[p]=new Image()
preloadedimages[p].src=fadeimages[p][0]
}

var ie4=document.all
var dom=document.getElementById

if (ie4||dom)
document.write('<div style="position:relative;width:'+slideshow_width+';height:'+slideshow_height+';overflow:hidden"><div  id="canvas0" style="position:absolute;width:'+slideshow_width+';height:'+slideshow_height+';top:0;left:0;filter:alpha(opacity=10);-moz-opacity:10"></div><div id="canvas1" style="position:absolute;width:'+slideshow_width+';height:'+slideshow_height+';top:0;left:0;filter:alpha(opacity=10);-moz-opacity:10;visibility: hidden"></div></div>')
else
document.write('<img name="defaultslide" src="'+fadeimages[0][0]+'">')

var curpos=10
var degree=10
var curcanvas="canvas0"
var curimageindex=0
var nextimageindex=1

function fadepic(){
if (curpos<100){
curpos+=10
if (tempobj.filters)
tempobj.filters.alpha.opacity=curpos
else if (tempobj.style.MozOpacity)
tempobj.style.MozOpacity=curpos/101
}
else{
clearInterval(dropslide)
nextcanvas=(curcanvas=="canvas0")? "canvas0" : "canvas1"
tempobj=ie4? eval("document.all."+nextcanvas) : document.getElementById(nextcanvas)
tempobj.innerHTML=insertimage(nextimageindex)
nextimageindex=(nextimageindex<fadeimages.length-1)? nextimageindex+1 : 0
var tempobj2=ie4? eval("document.all."+nextcanvas) : document.getElementById(nextcanvas)
tempobj2.style.visibility="hidden"
setTimeout("rotateimage()",pause)
}
}

function insertimage(i){
var tempcontainer=fadeimages[i][1]!=""? '<a href="'+fadeimages[i][1]+'" target="'+fadeimages[i][2]+'">' : ""
tempcontainer+='<img src="'+fadeimages[i][0]+'" border="0">'
tempcontainer=fadeimages[i][1]!=""? tempcontainer+'</a>' : tempcontainer
return tempcontainer
}

function rotateimage(){
if (ie4||dom){
resetit(curcanvas)
var crossobj=tempobj=ie4? eval("document.all."+curcanvas) : document.getElementById(curcanvas)
crossobj.style.zIndex++
tempobj.style.visibility="visible"
var temp='setInterval("fadepic()",50)'
dropslide=eval(temp)
curcanvas=(curcanvas=="canvas0")? "canvas1" : "canvas0"
}
else
document.images.defaultslide.src=fadeimages[curimageindex][0]
curimageindex=(curimageindex<fadeimages.length-1)? curimageindex+1 : 0
}

function resetit(what){
curpos=10
var crossobj=ie4? eval("document.all."+what) : document.getElementById(what)
if (crossobj.filters)
crossobj.filters.alpha.opacity=curpos
else if (crossobj.style.MozOpacity)
crossobj.style.MozOpacity=curpos/101
}

function startit(){
var crossobj=ie4? eval("document.all."+curcanvas) : document.getElementById(curcanvas)
crossobj.innerHTML=insertimage(curimageindex)
rotateimage()
}

if (ie4||dom)
window.onload=startit
else
setInterval("rotateimage()",pause)

</script>

HTML koden er at finde her www.transparent-metal.com (det er siden med billederne der bliver skiftet ud)

Mit spørgsmål er: Kan jeg køre det her scipt to gange og hvis jeg kan hvordan gør jeg det så?

Med Venlig Hilsen
LWG
Avatar billede roenving Novice
09. maj 2005 - 00:53 #1
Umiddelbart kan du ikke, fordi begge udgaver af scriptet jo kommer til at bruge de samme variabel-navne ...

-- det 'rigtige' ville selvfølgelig være at skrive scriptet om, så det var objekt-baseret, så det kunne instatieres flere gange, men til denne opgave ville jeg nok 'bare' vælge at duplikere det, dvs. give alle variabler og funktioner i den anden udgave andre navne:

var slideshow_width2='150px' //SET IMAGE WIDTH
var slideshow_height2='200px' //SET IMAGE HEIGHT
var pause2=4000 //SET PAUSE BETWEEN SLIDE (3000=3 seconds)

var fadeimages2=new Array()
//SET 1) IMAGE PATHS, 2) optional link, 3), optional link target:
fadeimages2[0]=["pics/message_3.jpg", "redirect3.htm", ""] //plain image syntax

osv.
Avatar billede mysenstein Novice
09. maj 2005 - 17:47 #2
Mange tak for hjælpen. Det er sådan noget her der gør at jeg snart sætter mig ned og lære at programmere javascript. Men det er jo godt at der er nogen der kan det, så de kan hjælpe sådan nogen som mig. Endnu en gang; mange tak

Mvh
LWG
Avatar billede roenving Novice
11. maj 2005 - 00:06 #3
Velbekomme '-)
Avatar billede roenving Novice
11. maj 2005 - 09:38 #4
-- og tak for point ;~}
Avatar billede mysenstein Novice
11. maj 2005 - 14:15 #5
Du har fortjent til fulde. Jeg var helt oppe og køre da jeg havde lavet de rettelser i scriptet som du foreslog ... og det så virkede. Det er garanteret logik hvis man er inde i javascript, men når man som mig ikke er inde i det er det næsten som magi. Overdrevet ... en kende måske, men overdrivelse fremmet forståelsen. Var bare glad for at det endelig lykkedes. Og jeg lærte også noget om javascript - ikke dårligt for 50 point. Tak igen

MVH
LWG
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester