Hallo Rafael,
JavaScript oder erwähntes marquee. Für beides spuckt Google das ein oder andere aus. Es sei erwähnt, dass marquee neben dem Internet Explorer nur von sehr wenigen Browsern unterstützt wird.
Das ist reines Wunschdenken, MARQUEE wird inzwischen von fast allen Browsern unterstützt, nicht aber unbedingt seine impliziten Methoden wie
start() und stop(). Diese Methoden werden von nicht so vielen Browsern unterstützt, und die genau braucht Marv aber für sein Vorhaben.
Wenn er nur auf den IE Wert legt, könnte er sogar mit Behaviors arbeiten. Die entsprechende HTC-Datei könnte dann ungefähr so aussehen:
<PUBLIC:ATTACH EVENT="onscroll" ONEVENT="makeStop()" />
<PUBLIC:ATTACH EVENT="onresize" ONEVENT="makeStart()" />
<SCRIPT LANGUAGE="JScript">
function makeStop() {
if (event.srcElement == element) {
if(this.scrollLeft > this.parentNode.offsetWidth/2){
this.stop();
}
}
}
//makeStart startet den Scrollvorgang erneut,
//wenn das Fenster vergrößert wird. Jetzt müsste
//auch noch ein Richtungswechsel erfolgen,
//wenn das Fenster verkleinert wird,
//damit der Inhalt wieder in die Mitte marschiert.
//Dazu war ich aber zu faul.
function makeStart() {
if (event.srcElement == element) {
if(this.scrollLeft < this.parentNode.offsetWidth/2){
this.start();
}
}
}
</SCRIPT>
Das "CSS" für das Marquee-Element so:
marquee {
behavior:url(marquee.htc);
}
Da Marv, wie man sieht, für sein Vorhaben auch bei Verwendung des Marquee-Elements nicht um Javascript herumkommt, sollte er es lieber gleich für alle Browser mit anderen Elementen nachbilden, die er nach Gusto über Javascript animieren kann.
Gruß Gernot