Avatar billede webrex Nybegynder
17. december 2005 - 18:17 Der er 26 kommentarer og
2 løsninger

Fastholde javascript inden i <td>

Hejsa

Problemet er, at nedenstående slideshow-script hopper ud af den <td>-celle, jeg har placeret den i, når browser-vinduet forstørres/ forminskes, for så at hoppe på plads igen, når man opdaterer. Hvordan løses dette? Er sciptet dårligt, da kom med et der virker med samme formål (slideshow).

Tak!

Kode:

<html>
<head>
<script type="text/javascript">
/***********************************************
* Ultimate Fade-In Slideshow (v1.5): © Dynamic Drive (http://www.dynamicdrive.com)
* This notice MUST stay intact for legal use
* Visit http://www.dynamicdrive.com/ for this script and 100s more.
***********************************************/

var fadeimages=new Array()
fadeimages[0]=["photo1.jpg", "", ""]
fadeimages[1]=["photo2.jpg", "", ""]
fadeimages[2]=["photo3.jpg", "", ""]

var fadebgcolor="white"

var fadearray=new Array() //array to cache fadeshow instances
var fadeclear=new Array() //array to cache corresponding clearinterval pointers

var dom=(document.getElementById) //modern dom browsers
var iebrowser=document.all

function fadeshow(theimages, fadewidth, fadeheight, borderwidth, delay, pause, displayorder){
this.pausecheck=pause
this.mouseovercheck=0
this.delay=delay
this.degree=10 //initial opacity degree (10%)
this.curimageindex=0
this.nextimageindex=1
fadearray[fadearray.length]=this
this.slideshowid=fadearray.length-1
this.canvasbase="canvas"+this.slideshowid
this.curcanvas=this.canvasbase+"_0"
if (typeof displayorder!="undefined")
theimages.sort(function() {return 0.5 - Math.random();}) //thanks to Mike (aka Mwinter) :)
this.theimages=theimages
this.imageborder=parseInt(borderwidth)
this.postimages=new Array() //preload images
for (p=0;p<theimages.length;p++){
this.postimages[p]=new Image()
this.postimages[p].src=theimages[p][0]
}

var fadewidth=fadewidth+this.imageborder*2
var fadeheight=fadeheight+this.imageborder*2

if (iebrowser&&dom||dom) //if IE5+ or modern browsers (ie: Firefox)
document.write('<div id="master'+this.slideshowid+'" style="position:relative;width:'+fadewidth+'px;height:'+fadeheight+'px;overflow:hidden;"><div id="'+this.canvasbase+'_0" style="position:absolute;width:'+fadewidth+'px;height:'+fadeheight+'px;top:0;left:0;filter:progid:DXImageTransform.Microsoft.alpha(opacity=10);-moz-opacity:10;-khtml-opacity:10;background-color:'+fadebgcolor+'"></div><div id="'+this.canvasbase+'_1" style="position:absolute;width:'+fadewidth+'px;height:'+fadeheight+'px;top:0;left:0;filter:progid:DXImageTransform.Microsoft.alpha(opacity=10);-moz-opacity:10;background-color:'+fadebgcolor+'"></div></div>')
else
document.write('<div><img name="defaultslide'+this.slideshowid+'" src="'+this.postimages[0].src+'"></div>')

if (iebrowser&&dom||dom) //if IE5+ or modern browsers such as Firefox
this.startit()
else{
this.curimageindex++
setInterval("fadearray["+this.slideshowid+"].rotateimage()", this.delay)
}
}

function fadepic(obj){
if (obj.degree<100){
obj.degree+=10
if (obj.tempobj.filters&&obj.tempobj.filters[0]){
if (typeof obj.tempobj.filters[0].opacity=="number") //if IE6+
obj.tempobj.filters[0].opacity=obj.degree
else //else if IE5.5-
obj.tempobj.style.filter="alpha(opacity="+obj.degree+")"
}
else if (obj.tempobj.style.MozOpacity)
obj.tempobj.style.MozOpacity=obj.degree/101
else if (obj.tempobj.style.KhtmlOpacity)
obj.tempobj.style.KhtmlOpacity=obj.degree/100
}
else{
clearInterval(fadeclear[obj.slideshowid])
obj.nextcanvas=(obj.curcanvas==obj.canvasbase+"_0")? obj.canvasbase+"_0" : obj.canvasbase+"_1"
obj.tempobj=iebrowser? iebrowser[obj.nextcanvas] : document.getElementById(obj.nextcanvas)
obj.populateslide(obj.tempobj, obj.nextimageindex)
obj.nextimageindex=(obj.nextimageindex<obj.postimages.length-1)? obj.nextimageindex+1 : 0
setTimeout("fadearray["+obj.slideshowid+"].rotateimage()", obj.delay)
}
}

fadeshow.prototype.populateslide=function(picobj, picindex){
var slideHTML=""
if (this.theimages[picindex][1]!="") //if associated link exists for image
slideHTML='<a href="'+this.theimages[picindex][1]+" target="'+this.theimages[picindex][2]+'">'
slideHTML+='<img src="'+this.postimages[picindex].src+'" border="'+this.imageborder+'px">'
if (this.theimages[picindex][1]!="") //if associated link exists for image
slideHTML+='</a>'
picobj.innerHTML=slideHTML
}


fadeshow.prototype.rotateimage=function(){
if (this.pausecheck==1) //if pause onMouseover enabled, cache object
var cacheobj=this
if (this.mouseovercheck==1)
setTimeout(function(){cacheobj.rotateimage()}, 100)
else if (iebrowser&&dom||dom){
this.resetit()
var crossobj=this.tempobj=iebrowser? iebrowser[this.curcanvas] : document.getElementById(this.curcanvas)
crossobj.style.zIndex++
fadeclear[this.slideshowid]=setInterval("fadepic(fadearray["+this.slideshowid+"])",50)
this.curcanvas=(this.curcanvas==this.canvasbase+"_0")? this.canvasbase+"_1" : this.canvasbase+"_0"
}
else{
var ns4imgobj=document.images['defaultslide'+this.slideshowid]
ns4imgobj.src=this.postimages[this.curimageindex].src
}
this.curimageindex=(this.curimageindex<this.postimages.length-1)? this.curimageindex+1 : 0
}

fadeshow.prototype.resetit=function(){
this.degree=10
var crossobj=iebrowser? iebrowser[this.curcanvas] : document.getElementById(this.curcanvas)
if (crossobj.filters&&crossobj.filters[0]){
if (typeof crossobj.filters[0].opacity=="number") //if IE6+
crossobj.filters(0).opacity=this.degree
else //else if IE5.5-
crossobj.style.filter="alpha(opacity="+this.degree+")"
}
else if (crossobj.style.MozOpacity)
crossobj.style.MozOpacity=this.degree/101
else if (crossobj.style.KhtmlOpacity)
crossobj.style.KhtmlOpacity=obj.degree/100
}


fadeshow.prototype.startit=function(){
var crossobj=iebrowser? iebrowser[this.curcanvas] : document.getElementById(this.curcanvas)
this.populateslide(crossobj, this.curimageindex)
if (this.pausecheck==1){ //IF SLIDESHOW SHOULD PAUSE ONMOUSEOVER
var cacheobj=this
var crossobjcontainer=iebrowser? iebrowser["master"+this.slideshowid] : document.getElementById("master"+this.slideshowid)
crossobjcontainer.onmouseover=function(){cacheobj.mouseovercheck=1}
crossobjcontainer.onmouseout=function(){cacheobj.mouseovercheck=0}
}
this.rotateimage()
}

</script>
</head>

<body>
<script type="text/javascript">
//new fadeshow(IMAGES_ARRAY_NAME, slideshow_width, slideshow_height, borderwidth, delay, pause (0=no, 1=yes), optionalRandomOrder)
new fadeshow(fadeimages, 140, 225, 0, 3000, 1, "R")

</script>
</body>

</html>
Avatar billede psykochicken Nybegynder
17. december 2005 - 19:34 #1
du mangler lige en ' i:
slideHTML='<a href="'+this.theimages[picindex][1]+" target="'+this.theimages[picindex][2]+'">'
sådan:
slideHTML='<a href="' + this.theimages[picindex][1] + '" target="' + this.theimages[picindex][2] + '">'

...men jeg kan ikke få den til at "hoppe ud" af en tabelcelle - hvordan ser din "tabelkode" ud ?
Avatar billede webrex Nybegynder
17. december 2005 - 21:08 #2
De to linjer, du har skrevet ser da umiddelbart ens ud? - Eneste forskel mellemrum hist og her - men det er måske også nok? - Jeg har ingen forstand på Javascript. Jeg har ikke fjernet den ' i hvert fald.

Hvis du fx lægger den ind i en tabel midt i dit browser-vindue og herefter gør vinduet mindre fx - da vil du se at den hopper ud nogle gange, for så at ryge på plads når du opdaterer (F5).
Avatar billede roenving Novice
18. december 2005 - 05:53 #3
slideHTML='<a href="' + this.theimages[picindex][1] + '" target="' + this.theimages[picindex][2] + '">'
Avatar billede roenving Novice
18. december 2005 - 05:55 #4
Hrm, Ekspertens maskine fjerner åbenbart den lille vigtige apostrof efter [picindex][1] + ...

-- men så var den måske også med fra start !-)
Avatar billede webrex Nybegynder
18. december 2005 - 11:25 #5
Problemet synliggøres, hvis i copy/ paster dette: OBS - Husk lige at sætte 3 billeder ind øverst i Javascript, der hvor der står billede1-3. Størrelsen af billedet ændrer i i javascript-koden, som sidder i html - new fadeshow(fadeimages, 140, 225  <---Disse to tal=width og height!


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
    <meta http-equiv="content-Type" content="text/html; charset=iso-8859-1" />
       
    <style type="text/css">

        html, body {
        height: 100%;
        width: 100%;
        background-color: #FFFFFF;
        margin: 0px;
        padding: 0px;
    }

/* Grundstruktur 4 divs */

    #top {
        height: 15%;
        width: 100%;
        background-color: #BC0929;
    }
    #menu {
        height: 20px;
        width: 100%;
        position: absolute;
        top: 15%;
        left: 0%;
        background-color: #FBE6F2;   
        border-bottom: 1px solid #BC0929;
        z-index: 2;
    }
    #indhold {
        height: 75%;
        width: 100%;
        background-color: #FFFFFF;
    }
    #bottom {
        height: 10%;
        width: 100%;
        background-color: #BC0929;
    }
   
/* Tabeller */
   
    #tablemenu {
        height: 100%;
        width: 100%;
    }
    #tableindhold {
        height: 100%;
        width: 100%;
    }
    #tablebottom {
        background-color: tranparent;
        height: 100%;
        width: 100%;
    }
    #tableindholdfor{
        height: 310px;
        width: 600px;
        margin-top: 20px;
        border: 1px solid #000000;
    }
   
    </style>
   
<script type="text/javascript">
        var fadeimages=new Array()
//SET IMAGE PATHS. Extend or contract array as needed
fadeimages[0]=["billede1.jpg", "", ""] //plain image syntax
fadeimages[1]=["billede2.jpg", "", ""] //plain image syntax
fadeimages[2]=["billede3.jpg", "", ""] //plain image syntax

var fadebgcolor="white"

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

var fadearray=new Array() //array to cache fadeshow instances
var fadeclear=new Array() //array to cache corresponding clearinterval pointers

var dom=(document.getElementById) //modern dom browsers
var iebrowser=document.all

function fadeshow(theimages, fadewidth, fadeheight, borderwidth, delay, pause, displayorder){
this.pausecheck=pause
this.mouseovercheck=0
this.delay=delay
this.degree=10 //initial opacity degree (10%)
this.curimageindex=0
this.nextimageindex=1
fadearray[fadearray.length]=this
this.slideshowid=fadearray.length-1
this.canvasbase="canvas"+this.slideshowid
this.curcanvas=this.canvasbase+"_0"
if (typeof displayorder!="undefined")
theimages.sort(function() {return 0.5 - Math.random();}) //thanks to Mike (aka Mwinter) :)
this.theimages=theimages
this.imageborder=parseInt(borderwidth)
this.postimages=new Array() //preload images
for (p=0;p<theimages.length;p++){
this.postimages[p]=new Image()
this.postimages[p].src=theimages[p][0]
}

var fadewidth=fadewidth+this.imageborder*2
var fadeheight=fadeheight+this.imageborder*2

if (iebrowser&&dom||dom) //if IE5+ or modern browsers (ie: Firefox)
document.write('<div id="master'+this.slideshowid+'" style="position:relative;width:'+fadewidth+'px;height:'+fadeheight+'px;overflow:hidden;"><div id="'+this.canvasbase+'_0" style="position:absolute;width:'+fadewidth+'px;height:'+fadeheight+'px;top:0;left:0;filter:progid:DXImageTransform.Microsoft.alpha(opacity=10);-moz-opacity:10;-khtml-opacity:10;background-color:'+fadebgcolor+'"></div><div id="'+this.canvasbase+'_1" style="position:absolute;width:'+fadewidth+'px;height:'+fadeheight+'px;top:0;left:0;filter:progid:DXImageTransform.Microsoft.alpha(opacity=10);-moz-opacity:10;background-color:'+fadebgcolor+'"></div></div>')
else
document.write('<div><img name="defaultslide'+this.slideshowid+'" src="'+this.postimages[0].src+'"></div>')

if (iebrowser&&dom||dom) //if IE5+ or modern browsers such as Firefox
this.startit()
else{
this.curimageindex++
setInterval("fadearray["+this.slideshowid+"].rotateimage()", this.delay)
}
}

function fadepic(obj){
if (obj.degree<100){
obj.degree+=10
if (obj.tempobj.filters&&obj.tempobj.filters[0]){
if (typeof obj.tempobj.filters[0].opacity=="number") //if IE6+
obj.tempobj.filters[0].opacity=obj.degree
else //else if IE5.5-
obj.tempobj.style.filter="alpha(opacity="+obj.degree+")"
}
else if (obj.tempobj.style.MozOpacity)
obj.tempobj.style.MozOpacity=obj.degree/101
else if (obj.tempobj.style.KhtmlOpacity)
obj.tempobj.style.KhtmlOpacity=obj.degree/100
}
else{
clearInterval(fadeclear[obj.slideshowid])
obj.nextcanvas=(obj.curcanvas==obj.canvasbase+"_0")? obj.canvasbase+"_0" : obj.canvasbase+"_1"
obj.tempobj=iebrowser? iebrowser[obj.nextcanvas] : document.getElementById(obj.nextcanvas)
obj.populateslide(obj.tempobj, obj.nextimageindex)
obj.nextimageindex=(obj.nextimageindex<obj.postimages.length-1)? obj.nextimageindex+1 : 0
setTimeout("fadearray["+obj.slideshowid+"].rotateimage()", obj.delay)
}
}

fadeshow.prototype.populateslide=function(picobj, picindex){
var slideHTML=""
if (this.theimages[picindex][1]!="") //if associated link exists for image
slideHTML='<a href="'+this.theimages[picindex][1]+'" target="'+this.theimages[picindex][2]+'">'
slideHTML+='<img src="'+this.postimages[picindex].src+'" border="'+this.imageborder+'px">'
if (this.theimages[picindex][1]!="") //if associated link exists for image
slideHTML+='</a>'
picobj.innerHTML=slideHTML
}


fadeshow.prototype.rotateimage=function(){
if (this.pausecheck==1) //if pause onMouseover enabled, cache object
var cacheobj=this
if (this.mouseovercheck==1)
setTimeout(function(){cacheobj.rotateimage()}, 100)
else if (iebrowser&&dom||dom){
this.resetit()
var crossobj=this.tempobj=iebrowser? iebrowser[this.curcanvas] : document.getElementById(this.curcanvas)
crossobj.style.zIndex++
fadeclear[this.slideshowid]=setInterval("fadepic(fadearray["+this.slideshowid+"])",50)
this.curcanvas=(this.curcanvas==this.canvasbase+"_0")? this.canvasbase+"_1" : this.canvasbase+"_0"
}
else{
var ns4imgobj=document.images['defaultslide'+this.slideshowid]
ns4imgobj.src=this.postimages[this.curimageindex].src
}
this.curimageindex=(this.curimageindex<this.postimages.length-1)? this.curimageindex+1 : 0
}

fadeshow.prototype.resetit=function(){
this.degree=10
var crossobj=iebrowser? iebrowser[this.curcanvas] : document.getElementById(this.curcanvas)
if (crossobj.filters&&crossobj.filters[0]){
if (typeof crossobj.filters[0].opacity=="number") //if IE6+
crossobj.filters(0).opacity=this.degree
else //else if IE5.5-
crossobj.style.filter="alpha(opacity="+this.degree+")"
}
else if (crossobj.style.MozOpacity)
crossobj.style.MozOpacity=this.degree/101
else if (crossobj.style.KhtmlOpacity)
crossobj.style.KhtmlOpacity=obj.degree/100
}


fadeshow.prototype.startit=function(){
var crossobj=iebrowser? iebrowser[this.curcanvas] : document.getElementById(this.curcanvas)
this.populateslide(crossobj, this.curimageindex)
if (this.pausecheck==1){ //IF SLIDESHOW SHOULD PAUSE ONMOUSEOVER
var cacheobj=this
var crossobjcontainer=iebrowser? iebrowser["master"+this.slideshowid] : document.getElementById("master"+this.slideshowid)
crossobjcontainer.onmouseover=function(){cacheobj.mouseovercheck=1}
crossobjcontainer.onmouseout=function(){cacheobj.mouseovercheck=0}
}
this.rotateimage()
}


    </script>
</head>
<body>
    <div id="top">&nbsp;</div>
    <div id="menu">&nbsp;</div>
    <div id="indhold">
        <table border="0" cellspacing="0" cellpadding="0" id="tableindhold">
        <tr>
        <td align="center" valign="middle">
            <table cellspacing="0" cellpadding="0" id="tableindholdfor">
            <tr>
            <td width="20%"><script type="text/javascript">
            //new fadeshow(IMAGES_ARRAY_NAME, slideshow_width, slideshow_height, borderwidth, delay, pause (0=no, 1=yes), optionalRandomOrder)
            new fadeshow(fadeimages, 150, 310, 0, 3000, 1, "R")
            </script>
            </td>
            <td align="center">BLABLABLA
            </td>
            <td width="20%"><script type="text/javascript">
            //new fadeshow(IMAGES_ARRAY_NAME, slideshow_width, slideshow_height, borderwidth, delay, pause (0=no, 1=yes), optionalRandomOrder)
            new fadeshow(fadeimages, 150, 310, 0, 3000, 1, "R")
            </script>
            </td>
            </tr>
            </table>
        </td>
        </tr>
        </table>
    </div>
    <div id="bottom">&nbsp;</div>
</body>
</html>
Avatar billede psykochicken Nybegynder
18. december 2005 - 14:04 #6
prøv at sætte en fast højde på "tabelindhold".
ex:
#tableindhold {
  height: 400px;
  width: 100%;
}
Avatar billede webrex Nybegynder
18. december 2005 - 14:40 #7
SUPER! Psykochicken - det løser problemet af en eller anden årsag.


Det ændrer dog noget andet - selve tabellen rykkes opad! Hmm... Kan du løse den?
Avatar billede webrex Nybegynder
18. december 2005 - 14:47 #8
Mere specifikt: "tableindhold" centrerer dermed ikke længere vertikalt.
Avatar billede webrex Nybegynder
18. december 2005 - 16:16 #9
- hvis man skal centrere vertikalt i css, bliver man rodet ud i noget absolut positionering, hvilket vil gøre at boksene flyder hen over hinanden - derfor har jeg valgt at skrive det hele om til tables, se nedenfor.

Problemet er identificeret af dig og løst - men når jeg fx ændrer table id="indhold" height til en fast height, da udfyldes hele browservinduet jo ikke længere, da height nu ikke længere er 75% ? Hvordan løses dette?

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
    <meta http-equiv="content-Type" content="text/html; charset=iso-8859-1" />
       
    <style type="text/css">

        html, body {
        height: 100%;
        width: 100%;
        background-color: #FFFFFF;
        margin: 0px;
        padding: 0px;
    }

/* Grundstruktur 4 tabeller */

    #top {
        height: 15%;
        width: 100%;
        background-color: #BC0929;
    }
    #menu {
        height: 20px;
        width: 100%;
        position: absolute;
            top: 15%;
            left: 0%;
        background-color: #FBE6F2;   
        border-bottom: 1px solid #BC0929;
    }
    #indhold {
        height: 75%;
        width: 100%;
        background-color: #FFFFFF;
        text-align: center;
    }
    #bottom {
        height: 10%;
        width: 100%;
        background-color: #BC0929;
        text-align: center;
    }
   
/* Tabeller */
    #tableindhold{
        height: 310px;
        width: 600px;
        border: 1px solid #000000;
        margin-top: 20px;   
    }

    </style>

    <script type="text/javascript" src="slideshow.js"></script>
</head>
<body>
    <table border="0" cellspacing="0" cellpadding="0" id="top" valign="middle"><tr><td>sdsad</td></tr></table>
    <div id="menu">&nbsp;</div>
    <table border="0" cellspacing="0" cellpadding="0" valign="middle" id="indhold">
    <tr><td>
        <table cellspacing="0" cellpadding="0" id="tableindhold">
            <tr>
            <td width="20%"><script type="text/javascript">
            //new fadeshow(IMAGES_ARRAY_NAME, slideshow_width, slideshow_height, borderwidth, delay, pause (0=no, 1=yes), optionalRandomOrder)
            new fadeshow(fadeimages, 150, 310, 0, 3000, 1, "R")
            </script>
            </td>
            <td align="center">BLABLABLA
            </td>
            <td width="20%"><script type="text/javascript">
            //new fadeshow(IMAGES_ARRAY_NAME, slideshow_width, slideshow_height, borderwidth, delay, pause (0=no, 1=yes), optionalRandomOrder)
            new fadeshow(fadeimages, 150, 310, 0, 3000, 1, "R")
            </script>
            </td>
            </tr>
        </table>
        </div>
    </td></tr>
    </table>
    <table border="0" cellspacing="0" cellpadding="0" id="bottom" valign="middle"><tr><td>
        sdsd
        </td>
        </tr>
        </table>
    </div>
       
</body>
</html>
Avatar billede webrex Nybegynder
18. december 2005 - 17:50 #10
Psykochicken du kan sikkert ikke lige overskue det - jeg prøver lige at få løst mit sidestruktur problem og så vender jeg tilbage...
Avatar billede webrex Nybegynder
18. december 2005 - 23:21 #11
Så nu har jeg brug for din hjælp!
Jeg har 3 problemer, som skal løses - så er den perfekt!
1) Billedet hopper ud af rammerne (i IE) - måske kan du se, hvor der skal ændres!

2) Kan man få billederne til at skifte blødt, dvs. sådan at de mixer ind i hinanden?

3) Jeg har 2 slideshows ved siden af hinanden som du kan se i nedenstående kode. De skal vise forskellige billeder, kan jeg få 3 i den ene og 3 andre billeder i det andet slideshow?

OBS! Se bort fra ovenstående koder - dette er en opdateret ny kode.

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
    <meta http-equiv="content-Type" content="text/html; charset=iso-8859-1" />
       
    <style type="text/css">
        html, body {
        height: 100%;
        width: 100%;
        background-color: #FFFFFF;
        margin: 0px;
        padding: 0px;
    }
/* Grundstruktur */

    #side {
        height: 100%;
        width: 100%;
    }   
    #top {
        height: 15%;
        width: 100%;
        background-color: #BC0929;
    }
    #indhold {
        height: 75%;
        width: 100%;
    }
    #menu {
        height: 20px;   
        width: 100%;
        background-color: #FBE6F2;   
    }
    #content {
        height: 80%;
        width: 100%;
    }
    #indtab{
        height: 100%;
        width: 100%;
        text-align: center;
        border: 0px solid #BC0929;
    }
    #bottom {
        height: 10%;
        width: 100%;
        background-color: #BC0929;
        text-align: center;
    }

/* Tabeller */

    #tablemenu {
        height: 100%;
        width: 100%;
        }

    #tableindhold{
        height: 310px;
        width: 610px;
        border: 1px solid #000000;
        margin: 5px auto 5px auto;       
    }
    #tdmenulinje {
        border-bottom: 1px solid #BC0929;
    }

    </style>
   
    <script type="text/javascript" src="slideshow.js"></script>
</head>
<body>
    <table border="0" cellspacing="0" cellpadding="0" id="side">
    <tr id="top"><td><img src="Adlogoleft.jpg">
    </td></tr>
    <tr id="indhold"><td>
        <table  cellspacing="0" cellpadding="0" id="indtab">
        <tr id="menu"><td>
            MENUEN
        </td></tr>
        <tr id="content"><td>
            <table cellspacing="0" cellpadding="0" id="tableindhold">
            <tr>
            <td width="20%"><script type="text/javascript">
            //new fadeshow(IMAGES_ARRAY_NAME, slideshow_width, slideshow_height, borderwidth, delay, pause (0=no, 1=yes), optionalRandomOrder)
            new fadeshow(fadeimages, 150, 310, 0, 4000, 1, "R")
            </script>
            </td>
            <td align="center">BLABLABLA
            </td>
            <td width="20%"><script type="text/javascript">
            //new fadeshow(IMAGES_ARRAY_NAME, slideshow_width, slideshow_height, borderwidth, delay, pause (0=no, 1=yes), optionalRandomOrder)
            new fadeshow(fadeimages, 150, 310, 0, 4000, 1, "R")
            </script>
            </td>
            </tr>
            </table>
        </td></tr>
        </table>
    </td></tr>
    <tr id="bottom"><td>Bunden</td></tr>   
    </table>
</body>
</html>
Avatar billede roenving Novice
19. december 2005 - 05:50 #12
1. Jeg har ikke kigget på den del af koden, men det kan psc sikkert klare !-)

2. Ja, men det vil kræve relativt meget ændring i grundkoden, som ellers er rigtig god ...

-- flere modeller kan bruges, IE understøtter jo direkte den slags transitions, men det kan også implementeres, så det er multibrowser !o]

3. Der er overhovedet ingen problemer i at have 2, 20, 2000000 slideshows, da det er objekt-baseret, det eneste er, at man skal lave et nyt array for hver forekomst af slideshowet:

<script type="text/javascript">
        var fadeimages=new Array()
//SET IMAGE PATHS. Extend or contract array as needed
fadeimages[0]=["billede1.jpg", "", ""] //plain image syntax
fadeimages[1]=["billede2.jpg", "", ""] //plain image syntax
fadeimages[2]=["billede3.jpg", "", ""] //plain image syntax

            //new fadeshow(IMAGES_ARRAY_NAME, slideshow_width, slideshow_height, borderwidth, delay, pause (0=no, 1=yes), optionalRandomOrder)
            new fadeshow(fadeimages, 150, 310, 0, 4000, 1, "R")
</script>

<script type="text/javascript">
        var fadeimagesX=new Array()
//SET IMAGE PATHS. Extend or contract array as needed
fadeimagesX[0]=["billede11.jpg", "", ""] //plain image syntax
fadeimagesX[1]=["billede12.jpg", "", ""] //plain image syntax
fadeimagesX[2]=["billede13.jpg", "", ""] //plain image syntax

            //new fadeshow(IMAGES_ARRAY_NAME, slideshow_width, slideshow_height, borderwidth, delay, pause (0=no, 1=yes), optionalRandomOrder)
            new fadeshow(fadeimagesX, 150, 310, 0, 4000, 1, "R")
</script>

-- bemærk X'et !-)
Avatar billede webrex Nybegynder
19. december 2005 - 15:27 #13
Ja, >Roenving godt set! Jeg har ikke kigget godt efter. Så nu er mit problem nr. 3 løst! Mht. til problem nr. 2, så lyder det som om, det kræver mere end som så, bare lige at lave denne effekt, så det lader til at det må blive en anden gang medmindre Roenving du kender et script, som jeg lige kan byttte ud med dette. Det vigtigste er nu, at få løst sidste problem; det med at de hopper ud af <td> ligesom ved den gamle kode. Kan en af jer finde fejlen, Psykochicken (det virkede let for dig sidst!) eller en anden?
Avatar billede webrex Nybegynder
19. december 2005 - 23:19 #14
Roenving el. Psykochicken! Vil en af jer kunne løse mit problem, jeg er gået i stå! Jeg sætter gerne pointtallet op... Det skal bare løses!
Avatar billede psykochicken Nybegynder
19. december 2005 - 23:25 #15
prøv med flg. lille ændring i dit script:
if (iebrowser&&dom||dom) //if IE5+ or modern browsers (ie: Firefox)
document.write('<div id="master'+this.slideshowid+'" style="width:'+fadewidth+'px;height:'+fadeheight+'px;overflow:hidden;"><div id="'+this.canvasbase+'_0" style="width:'+fadewidth+'px;height:'+fadeheight+'px;top:0;left:0;filter:progid:DXImageTransform.Microsoft.alpha(opacity=10);-moz-opacity:10;-khtml-opacity:10;background-color:'+fadebgcolor+'"><\/div><div id="'+this.canvasbase+'_1" style="width:'+fadewidth+'px;height:'+fadeheight+'px;top:0;left:0;filter:progid:DXImageTransform.Microsoft.alpha(opacity=10);-moz-opacity:10;background-color:'+fadebgcolor+'"><\/div><\/div>')
else
document.write('<div><img name="defaultslide'+this.slideshowid+'" src="'+this.postimages[0].src+'"><\/div>')

/psc
Avatar billede webrex Nybegynder
19. december 2005 - 23:42 #16
Det virker umiddelbart, men den siger det er med fejl: linje 88, tegn 1, fejl 'this.theimages[...].1' er null eller ikke et objekt, kode 0

> Måske denne måde det skal løses på - men du tror ikke bare du ligesom før kan sige at der et sted skal angives en fast højde?
Avatar billede webrex Nybegynder
19. december 2005 - 23:52 #17
Nej, din ændring virkede!!! - Hvad gjorde du?
Avatar billede psykochicken Nybegynder
19. december 2005 - 23:56 #18
fjernede den faste positionering af div-erne ;o)
Avatar billede webrex Nybegynder
19. december 2005 - 23:58 #19
Smart og køligt gjort. Tak for hjælpen. (Smid lige et svar):o)
Avatar billede psykochicken Nybegynder
20. december 2005 - 00:03 #20
svar kommer her - husk at give mester roenving point..og kig evt. på hans fade-funktion: http://www.eksperten.dk/spm/628222.
Avatar billede roenving Novice
20. december 2005 - 00:43 #21
-- jeg havde ikke selv mod på at integrere funktionen, da der sikkert er adskillige små hjørner, der skal rives i ...

-- els velbekomme '-)
Avatar billede webrex Nybegynder
20. december 2005 - 12:47 #22
Håber i er tilfredse med point-fordelingen :)
>Jeg kan da godt oprette nyt spg. hvor jeg vil have fade-funktion på billederne - men tror I det er for svært at integrere uden at ødelægge at det vi indtil nu har lavet?
Avatar billede webrex Nybegynder
20. december 2005 - 12:54 #23
Men nu I kender min java-script kode er det måske lettere. Jeg giver gerne en god sjat point, hvis I integrerer fade-funktion i mit script! Jeg kan ikke umiddelbart selv se, hvordan jeg skal copy/paste fade-funktion over i mit?
Avatar billede roenving Novice
21. december 2005 - 08:21 #24
Jeg har faktisk integreret fade-funktionen i nogle andre slideshows, men der skal laves en del overvejelse, for når tingen er objekt-baseret vil der være nogle faldgruber, og det var dem, jeg ikke lige havde mod (og tid !-) til at gennemskue !o]

-- og tak for point ;~}
Avatar billede webrex Nybegynder
21. december 2005 - 12:04 #25
Avatar billede roenving Novice
21. december 2005 - 12:41 #26
Jo, sikkert, men det vil være uendeligt besværligt at have flere af på samme side ...
Avatar billede webrex Nybegynder
22. december 2005 - 17:42 #27
>Psc - Ville bare lige sige - at din ændring medfører at billederne nogle gange vises 2 gange i træk -! ? - Hvordan løses det?
Avatar billede webrex Nybegynder
22. december 2005 - 17:47 #28
Rettelse: Billederne vises hver gang 2 gange i træk - hvordan løses dette, sådan at den bare kører rækken igennem og viser hver billede 1 gang og så forfra!?
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