Avatar billede themaster Nybegynder
06. april 2004 - 03:17 Der er 15 kommentarer og
1 løsning

vertical rulletekst fejler idet den ikke poster indhold

Hej Exp's

Jeg har lave en lille rulletekst og er næsten færdig. Troede jeg... ;-(

Her er mit script: (det er hele dokumentet)


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<META NAME="Generator" CONTENT="Stone's WebWriter 3.5">
<script language="javascript">
//Vertikal nyhedsoversigt.
var t=1;
var numberOfMes = 4;
var speed = 5;
var topStop = 2;
var pause = true;
var pauseTime = 5000;
    function nyheds_scroll() {
        besked = document.getElementById('overskrift');
        scrol = document.getElementById('scroller');
        besked.style.top = parseInt(scrol.offsetHeight);
            if (document.getElementById('overskrift'+t)) {
                besked.innerHTML = document.getElementById('overskrift'+t).innerHTML;
                heightOfMes = parseInt(document.getElementById('overskrift'+t).offSet);
                if (t==numberOfMes) {
                    t=1;
                }    else {
                    t++;
                    scrolling();
                }
            }    else {
                t++;
                nyheds_scroll();
            }
    }
function scrolling() {
    besked.style.top = parseInt(besked.style.top)-1;
    posYofMes = parseInt(besked.style.top);
    if (pause && posYofMes == topStop) {
        setTimeOut('scrolling()',pauseTime);
    }    else if (posYofMes > -heightOfMes) {
            setTimeOut('scrolling()',speed);
    }    else {
            nyheds_scroll();
    }
}
</script>
<!-- Minus AutoDato -->
    <title>rulletekst.php</title>
</head>
<body onload="nyheds_scroll();">

<?php
$server = "vport.dk";
    $conn = mysql_connect($server, "Admin", "logpaa#");
    mysql_select_db("visionportalen_bruger", $conn);
    $result = mysql_query("SELECT * FROM bruger");
    while ($t < 5) {
        $row = mysql_fetch_array($result);
            echo "<div id='overskrift";
            echo $t;
            echo "' style='visibility:hidden;'>";
            echo $row["nick"];
            echo "</div>";
        $t = $t + 1;
    }
mysql_close($conn);
?>

<table width="500" height="20" border="0" cellspacing="0" cellpadding="0">
<tr>
    <td>
        <div id='scroller' style="width:170px;height:150px;border:1px;">
            <div id='overskrift' style="position:relative;"></div>
        </div>
    </td>
</tr>
</table>


</body>
</html>

Den giver ingen fejl i JavaScriptet. Men den vil ikke poste de forskellige tag's. Hvad kan der være galt??

//themaster
Avatar billede themaster Nybegynder
06. april 2004 - 03:21 #1
"Den giver ingen fejl i JavaScriptet." = Ingen syntaks-fejl. ;-)
Avatar billede roenving Novice
06. april 2004 - 17:19 #2
Hvor skulle de postes, du laver jo bare 5 skjulte div'er ?-)
Avatar billede themaster Nybegynder
06. april 2004 - 17:42 #3
<?php
$server = "vport.dk";
    $conn = mysql_connect($server, "Admin", "logpaa#");
    mysql_select_db("visionportalen_bruger", $conn);
    $result = mysql_query("SELECT * FROM bruger");
    while ($t < 5) {
        $row = mysql_fetch_array($result);
            echo "<div id='overskrift";
            echo $t;
            echo "' style='visibility:hidden;'>";
            echo $row["nick"];
            echo "</div>";
        $t = $t + 1;
    }
mysql_close($conn);
?>

laver 4 div'er
med de skal rulle....og det gør de ikke
Avatar billede themaster Nybegynder
06. april 2004 - 17:44 #4
og hvis du ser i Javascriptet så er de forbundet til, men den vil ikke vise noget.
se her: http://visionportalen.dk/ny_root/php/infobar.php
Avatar billede roenving Novice
06. april 2004 - 18:39 #5
Efter at have kigget nærmere efter, fandt jeg et par alvorlige brølere, hvor nogen af dem bare forhindrer scroll (at objekter ikke overføres mellem funktionerne !-), andre medfører, at scriptet ikke kører i løkke (tælleren er brugt forkert), men den værste var, at du langsomt men sikkert overtager alle computerens ressourcer, fordi du kalder to forskellige funktioner inde fra hinanden, så du får lavet en uendelig løkke, for de kommer aldrig ud af dem ...

Umiddelbart virker det sådan, hvor de to første typer fejl er rettet, men jeg har ikke lige kigget på en anden metode til at undgå gen-gen-gen-gen-gen- ... tagelserne

<script language="javascript">
//Vertikal nyhedsoversigt.
var t=1;
var numberOfMes = 4;
var speed = 5;
var topStop = 2;
var pause = true;
var pauseTime = 5000;
var besked,scrol;
function nyheds_scroll(){
  besked = document.getElementById('overskrift');
  scrol = document.getElementById('scroller');
  besked.style.top = scrol.offsetHeight;
  if (numberOfMes >= t) {
    //alert(besked+"\n"+t);
    besked.innerHTML = document.getElementById('overskrift'+t).innerHTML;
    heightOfMes = document.getElementById('overskrift'+t).offsetHeight;
    t = 1 + ((t==numberOfMes)?0:t);
    scrolling();
  }else {
    t=1;
    nyheds_scroll();
  }
}
function scrolling(){
    posYofMes = parseInt(besked.style.top)-1
    besked.style.top = posYofMes + 'px';
    if (pause && posYofMes == topStop) {
        setTimeout('scrolling()',pauseTime);
    }    else if (posYofMes > -heightOfMes) {
            setTimeout('scrolling()',speed);
    }    else {
            nyheds_scroll();
    }
}
</script>
Avatar billede themaster Nybegynder
06. april 2004 - 18:47 #6
roenving >> hvis du gider at se lidt på det ville det bare være for fedt...så simder jeg gerne nogle flere point..
Avatar billede roenving Novice
06. april 2004 - 20:01 #7
Sådan ?-)

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<script language="javascript" type="text/javascript">
//Vertikal nyhedsoversigt.
var t=-1,numberOfMes = 4;
var speed = 5;
var topStop = 2;
var pause = true,pauseTime = 5000;
var besked,scrol,heightOfMes,timer=0;
function nyheds_scroll(){
  besked = document.getElementById('overskrift');
  scrol = document.getElementById('scroller');
  besked.style.top = scrol.offsetHeight;
  newMes();
}
function newMes(){
  if(timer!=0)clearTimeout(timer)
  t = ++t%numberOfMes;
  besked.innerHTML = document.getElementById('overskrift'+(t+1)).innerHTML;
  heightOfMes = document.getElementById('overskrift'+(t+1)).offsetHeight;
  besked.style.top = scrol.offsetHeight-scrol.offsetTop;
  scrolling();
}
function scrolling(){
  posYofMes = parseInt(besked.style.top)-1;
  besked.style.top = posYofMes + 'px';
  if (pause && posYofMes == topStop) {
    timer = setTimeout('scrolling()',pauseTime);
  }else if (posYofMes > -heightOfMes) {
    timer = setTimeout('scrolling()',speed);
  }else {
    newMes();
  }
}
</script>
    <title>rulletekst.php</title>
</head>
<body onload="nyheds_scroll();">

<!--?php
$server = "vport.dk";
    $conn = mysql_connect($server, "Admin", "logpaa#");
    mysql_select_db("visionportalen_bruger", $conn);
    $result = mysql_query("SELECT * FROM bruger");
    while ($t < 5) {
        $row = mysql_fetch_array($result);
            echo "<div id='overskrift";
            echo $t;
            echo "' style='display:none;'>";
            echo $row["nick"];
            echo "</div>";
        $t = $t + 1;
    }
mysql_close($conn);
?-->

<div id='overskrift1' style='display:none;'>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Pellentesque lectus elit, sagittis at, accumsan id, dictum et, erat. Etiam non sapien. Quisque aliquet gravida mi. Integer vitae tortor quis wisi scelerisque vestibulum. Duis pulvinar magna non mauris laoreet volutpat. Aenean et purus. Cras accumsan justo sed arcu. Quisque urna. Sed mi. Ut sed nunc at lorem aliquet vulputate. Proin quis nibh. Proin ut dui vitae urna lacinia posuere. Ut vulputate purus facilisis nunc. Morbi ultrices euismod leo. Integer dui tellus, dictum in, viverra at, sagittis id, sem. Donec nonummy, sem eu hendrerit vulputate, nunc urna molestie eros, et semper nunc mi at ipsum. Praesent tempus malesuada felis. </div>
<div id='overskrift2' style='display:none;'>Vestibulum iaculis mattis sem. Suspendisse hendrerit, justo nec scelerisque mattis, ipsum lacus rutrum nibh, ac sollicitudin tellus felis eu ligula. Aliquam erat volutpat. Curabitur id magna. Aliquam eu magna id pede viverra varius. Nunc eu augue. Nulla quis ligula ac purus commodo vestibulum. Suspendisse adipiscing. Nullam velit. Integer nibh dolor, euismod non, blandit sed, ultricies vel, velit. Nulla posuere metus vel libero. Vestibulum elementum. Cras at nunc eget turpis tristique ullamcorper. In eget mi. Aliquam quis pede. Curabitur tincidunt est quis quam. Nunc elit nulla, ornare a, tristique eu, imperdiet in, eros. </div>
<div id='overskrift3' style='display:none;'>Nunc dolor. Nulla id purus vitae lacus interdum blandit. Donec lorem ante, rutrum eget, nonummy quis, luctus vel, eros. Quisque porttitor felis malesuada elit. Aliquam pretium purus vitae nunc. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Aliquam sem. In mattis ipsum id dolor. Vivamus quis neque. Etiam vitae velit. Phasellus interdum, eros sit amet porta rutrum, mi neque ornare diam, et nonummy ipsum eros a dolor. Maecenas ut ligula. Vivamus adipiscing dignissim neque. Cras sit amet sapien.</div>
<div id='overskrift4' style='display:none;'>Proin accumsan consequat felis. Nunc pellentesque, nisl vestibulum iaculis rhoncus, mauris enim luctus neque, quis auctor dolor sapien et massa. Donec in lorem vel pede mollis condimentum. Mauris libero. Praesent imperdiet. Nam porttitor nisl ac eros. Nulla sed metus. Duis id quam. Donec id augue. In enim ante, consectetuer in, cursus vitae, tristique sit amet, ipsum. Mauris ullamcorper porta nisl. Morbi pharetra. Proin commodo. Sed facilisis vehicula wisi. Ut malesuada. In hac habitasse platea dictumst. Vivamus auctor. Pellentesque quis massa id nunc ornare varius. Aliquam erat volutpat. </div>

<table width="500" border="0" cellspacing="0" cellpadding="0">
<tr>
    <td>
        <div id='scroller' style="width:170px;height:150px;border:1px;">
            <div id='overskrift' style="position:relative;"></div>
        </div>
    </td>
</tr>
</table>

</body>
</html>

-- jeg har jo ikke udtrækket, så jeg har måttet bruge nogle andre, men såvidt jeg kunne se, virkede den uden problemer !-)
Avatar billede themaster Nybegynder
06. april 2004 - 20:11 #8
prøv lige at se: http://vport.dk/ny_root/php/infobar.php

der sker ikke rigitg noget...
Avatar billede themaster Nybegynder
06. april 2004 - 20:14 #9
har selv siddet og kogt over den hele eftermiddagen, men jeg aner ikke hvad der er galt.... ;-(
Avatar billede themaster Nybegynder
06. april 2004 - 20:34 #10
den vil gerne med dit udtræk, men ikke med sql-udtrækket...hvad kan det skylles??
Avatar billede roenving Novice
06. april 2004 - 21:09 #11
Fordi du genererer en div med en ugyldig id:

<div id='overskrift' style='display:none;'>themaster</div>

-- der må selvfølgelig ikke være en uden tal på ...
Avatar billede themaster Nybegynder
06. april 2004 - 22:08 #12
ok...har du tid til et lille suplerende spm??
hvis ja, så læs lige:

hvordan kan jeg få den til at køre teksten ud oppe i toppen efter pausen. Som det er nu forsvinder den bare, og den nye tag kommer bare nedefra?

ligesom rigtige rulletekster i film og på tv.

//themaster
Avatar billede roenving Novice
07. april 2004 - 01:04 #13
Måske noget i denne stil:

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Scroll nyheder</title>
<meta name="Generator" content="Stone's WebWriter 4">
<meta name="keywords" content="søgeord adskilt af komma">
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css">
html,body{height:100%;padding:0px;margin:0px;}
#container{position:relative;width:150px;overflow:hidden;border:0px solid red;}
#scroll1{position:relative;border:0px solid green;}
#scroll2{position:relative;border:0px solid green;margin-top:20px;}
.scrText{visibility:hidden;width:150px;}
</style>
<script language="javascript" type="text/javascript">
var pause = true,pauseTime = 0;
var speed = 20;
var topStop = 2;
var yPos=timer=0,act=-1;

var scroller = ['scroll1','scroll2'];
var elms = ['container','overskrift1','overskrift2','overskrift3','overskrift4'];
var mesH = new Array();
function maxH(){
  var mH = 0;
  for(i=0;elms.length>i;i++){
    elms[i] = document.getElementById(elms[i]);
    mesH[i] = elms[i].offsetHeight;
    mH = Math.max(mH,mesH[i]);
  }
  elms[0].style.height = mH + 'px';
  for(i=1;elms.length>i;i++){
    elms[i].style.display='none';
    elms[i].style.visibility='visible';
  }
}
function initScroll(){
  for(i=0;scroller.length>i;i++)scroller[i] = document.getElementById(scroller[i]);
  scroller[0].innerHTML = elms[1].innerHTML;
  setTimeout('scrollStart()',((pause)?pauseTime:5000));
}
function scrollStart(){
  act = ++act%(elms.length-1);
  scroller[0].innerHTML = elms[act+1].innerHTML;
  scroller[0].style.top = '0px';
  yPos = 0;
  scroller[1].innerHTML = elms[((act+2==elms.length)?1:act+2)].innerHTML;
  timer = setInterval('scroll()',speed);
}
function scroll(){
  yPos--;
  if(-yPos>mesH[act+1]+20){
    clearInterval(timer);
    setTimeout('scrollStart()',((pause)?pauseTime:0));
  }else{
    scroller[0].style.top = yPos + 'px';
    scroller[1].style.top = yPos + 'px';
  }
}
</script>
</head>
<body onload="maxH();initScroll();">
<div id="container">
<div id="scroll1"></div>
<div id="scroll2"></div>
</div>
<div id='overskrift1' class='scrText'>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Pellentesque lectus elit, sagittis at, accumsan id, dictum et, erat. Etiam non sapien. Quisque aliquet gravida mi. Integer vitae tortor quis wisi scelerisque vestibulum. Duis pulvinar magna non mauris laoreet volutpat. Aenean et purus. Cras accumsan justo sed arcu. Quisque urna. Sed mi. Ut sed nunc at lorem aliquet vulputate. Proin quis nibh. Proin ut dui vitae urna lacinia posuere. Ut vulputate purus facilisis nunc. Morbi ultrices euismod leo. Integer dui tellus, dictum in, viverra at, sagittis id, sem. Donec nonummy, sem eu hendrerit vulputate, nunc urna molestie eros, et semper nunc mi at ipsum. Praesent tempus malesuada felis. </div>
<div id='overskrift2' class='scrText'>Vestibulum iaculis mattis sem. Suspendisse hendrerit, justo nec scelerisque mattis, ipsum lacus rutrum nibh, ac sollicitudin tellus felis eu ligula. Aliquam erat volutpat. Curabitur id magna. Aliquam eu magna id pede viverra varius. Nunc eu augue. Nulla quis ligula ac purus commodo vestibulum. Suspendisse adipiscing. Nullam velit. Integer nibh dolor, euismod non, blandit sed, ultricies vel, velit. Nulla posuere metus vel libero. Vestibulum elementum. Cras at nunc eget turpis tristique ullamcorper. In eget mi. Aliquam quis pede. Curabitur tincidunt est quis quam. Nunc elit nulla, ornare a, tristique eu, imperdiet in, eros. </div>
<div id='overskrift3' class='scrText'>Nunc dolor. Nulla id purus vitae lacus interdum blandit. Donec lorem ante, rutrum eget, nonummy quis, luctus vel, eros. Quisque porttitor felis malesuada elit. Aliquam pretium purus vitae nunc. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Aliquam sem. In mattis ipsum id dolor. Vivamus quis neque. Etiam vitae velit. Phasellus interdum, eros sit amet porta rutrum, mi neque ornare diam, et nonummy ipsum eros a dolor. Maecenas ut ligula. Vivamus adipiscing dignissim neque. Cras sit amet sapien.</div>
<div id='overskrift4' class='scrText'>Proin accumsan consequat felis. Nunc pellentesque, nisl vestibulum iaculis rhoncus, mauris enim luctus neque, quis auctor dolor sapien et massa. Donec in lorem vel pede mollis condimentum. Mauris libero. Praesent imperdiet. Nam porttitor nisl ac eros. Nulla sed metus. Duis id quam. Donec id augue. In enim ante, consectetuer in, cursus vitae, tristique sit amet, ipsum. Mauris ullamcorper porta nisl. Morbi pharetra. Proin commodo. Sed facilisis vehicula wisi. Ut malesuada. In hac habitasse platea dictumst. Vivamus auctor. Pellentesque quis massa id nunc ornare varius. Aliquam erat volutpat. </div>
</body>
</html>
Avatar billede themaster Nybegynder
07. april 2004 - 03:52 #14
1000 tak.....læg et svar så kommer der lidt points..
Avatar billede roenving Novice
07. april 2004 - 04:00 #15
Velbekomme '-)
Avatar billede roenving Novice
07. april 2004 - 04:36 #16
-- og tak for points ;~}
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

Seneste spørgsmål Seneste aktivitet
I går 10:21 Ny printer, men hvilken Af mort1 i Printere
13/0819:41 USB på Linux Af Uvanga i Linux
12/0818:26 Hvilken type mus Af mort1 i PC
11/0813:21 ms Forms Af leahcim i Andet software
10/0821:30 Blokeret på Snapchat? Af LineP i Chat & Messaging