• Das Erstellen neuer Accounts wurde ausgesetzt. Bei berechtigtem Interesse bitte Kontaktaufnahme über die üblichen Wege. Beste Grüße der Admin

Bildwechsel / Mac

mo

Administrator
Teammitglied
Hi Leuts,
hab ein kleines Problemchen:
Hier, auf der Page eines Kunden, haben wir folgendes umgesetzt.
In dem oberen, grossen Feld werden X Bilder mit JS automatisch durchgeswitcht. Alle 3 Sec. ein Bild. Klappt im IE ohne Probleme.
Leider macht NS nicht das, was er soll.. nämlich nix.
Die Bilder laufen nicht durch. Das Problem liegt IMHO in der Zeile var pix.. und dort am Ende. Zwischen dem letzten " und der ) ist ein Steuerzeichen, was da nicht hingehört.
Wer von Euch kann das mit dem NS (vorzugsweise auf einem Mac) mal testen und mir die Vermutung bestätigen?
Das Steuerzeichen lässt sich leider nicht so leicht entfernen, da die Inhalte des JavaScripts aus einer Datenbank kommen und irgendwo da schummelt sich der Fehler rein.
Wen´s interessiert, hier der Code:
Code:
<SCRIPT LANGUAGE="JavaScript" TYPE="text/javascript">
<!--
function makeArray() {
        this.length = makeArray.arguments.length
        for (var i = 0; i < this.length; i++) this[i+1] = makeArray.arguments[i]
}
<?
if (!$newsid) {
$einfueger = "";
} else {
$einfueger = "WHERE groups = '$newsid'";
}
$handler=mysql_connect($db_server,$db_username,$db_passwort);
mysql_select_db($db_database,$handler);
$result1    = mysql_query("SELECT bild FROM news_bilder WHERE groups = '$newsid' ORDER BY bildid ASC",$handler);
//echo "SELECT bild FROM news_bilder $einfueger ORDER BY groups DESC";
$anzahl1    = mysql_numrows($result1);
for ($i1 = 0; $i1 < $anzahl1; $i1++)
{
    $row1 = mysql_fetch_array($result1);
    $bild = $row1[bild];
    $einfueger2 .= "\"$bild\",";
    $einfueger3 .= "Bild".$i1." = new Image();\nBild".$i1.".src = \"gfxu/news/".$bild."\";\n";
}
$einfueger2 = str_replace(" ","",$einfueger2);
$einfueger2[strlen($einfueger2)-1] = "";
echo "\n".$einfueger3; ?>
var pix = new makeArray (<? echo $einfueger2;?>);
var nummer = 1;
function wechsle() {
        document.wechsel.src = "gfxu/news/"+pix[nummer];
        //alert("gfxu/news/"+pix[nummer]);
        nummer += 1;
        if (nummer == <? echo $anzahl1+1 ?>) nummer = 1;
                setTimeout("wechsle()", 3000);
}
//-->
</SCRIPT>

thx for help,
mo
 
hi, ein nachtrag noch:

unser problem is, dass es am mac gar ned läuft (getestet mit nn4.5 und ie5.0 am mac)

und im win ns 6 kann man sich das komische zeichen ansehen...

gruß
tobi
 
Zurück
Oben