Kontakt Home Grundlagen Scripts zum Kopieren Beispiele
JavaScript

Ticker

Braucht frau ja - leider(?) - doch immer wieder, also hier ein hübsches Tickerchen in DHTML oder wie immer ihr das nennen wollt:

Nun, jedenfalls der beste, den ich finden konnte (und zwar bei dynamicdrive.com, sowieso ne ganz gute Ressource...)

Rand drumherum wird mittels css und einem <div> gesteuert, also in den head:

<style type="text/css">
<!--
.ticker
{
font: 12px Verdana, Arial, Helvetica, sans-serif;
color: #000000;
}
a.ticker:link
{
text-decoration:none;
}
a.ticker:visited
{
text-decoration:none;
}
a.ticker:hover
{
text-decoration:none;
color: #C00;
}
a.ticker:active
{
background: #C00;
color: #FFF;
text-decoration: underline;
}
.tickerrand
{
background-color: #FFFFFF;
border: 1px #003300 dotted;
padding: 7px;
margin: 3px;
width: 510px;
}
-->
</style>

Und der Ticker selbst - dieses Script an die Stelle der Seite, wo's ticken soll:

<div class="tickerrand">
<script language="JavaScript1.2">
/*
Cross browser Marquee script- © Dynamic Drive (www.dynamicdrive.com)
For full source code, 100's more DHTML scripts, and Terms Of Use, visit http://www.dynamicdrive.com
Credit MUST stay intact
*/
//Specify the marquee's width (in pixels)
var marqueewidth=500
//Specify the marquee's height
var marqueeheight=17
//Specify the marquee's marquee speed (larger is faster 1-10)
var marqueespeed=3
//configure background color:
var marqueebgcolor="#FFFFFF"
//Pause marquee onMousover (0=no. 1=yes)?
var pauseit=1
var text = "<a href='../I_info.asp?id=1' class='ticker' onFocus='if(this.blur) this.blur()'>Dies ist doch ein wundervoller Ticker... oder? ;-) hannah</a>";
//Specify the marquee's content (don't delete <nobr> tag)
//Keep all content on ONE line, and backslash any single quotations (ie: that\'s great):
var marqueecontent='<nobr><span class=ticker>' + text + '</span></nobr>'////NO NEED TO EDIT BELOW THIS LINE////////////
var copyspeed=marqueespeed
var pausespeed=(pauseit==0)? copyspeed: 0
var iedom=document.all||document.getElementById
if (iedom)
document.write('<span id="temp" style="visibility:hidden;position:absolute;top:-100;left:-1000; margin-right:13px;">'+marqueecontent+'</span>')
var actualwidth=''
var cross_marquee, ns_marquee
function populate(){
if (iedom){
cross_marquee=document.getElementById? document.getElementById("iemarquee") : document.all.iemarquee
cross_marquee.style.left=marqueewidth+8
cross_marquee.innerHTML=marqueecontent
actualwidth=document.all? cross_marquee.offsetWidth : document.getElementById("temp").offsetWidth
}
else if (document.layers){
ns_marquee=document.ns_marquee.document.ns_marquee2
ns_marquee.left=marqueewidth+8
ns_marquee.document.write(marqueecontent)
ns_marquee.document.close()
actualwidth=ns_marquee.document.width
}
lefttime=setInterval("scrollmarquee()",20)
}
window.onload=populate
function scrollmarquee(){
if (iedom){
if (parseInt(cross_marquee.style.left)>(actualwidth*(-1)+8))
cross_marquee.style.left=parseInt(cross_marquee.style.left)-copyspeed
else
cross_marquee.style.left=marqueewidth+8
}
else if (document.layers){
if (ns_marquee.left>(actualwidth*(-1)+8))
ns_marquee.left-=copyspeed
else
ns_marquee.left=marqueewidth+8
}
}
if (iedom||document.layers){
with (document){
document.write('<table border="0" cellspacing="0" cellpadding="0"><td>')
if (iedom){
write('<div style="position:relative;width:'+marqueewidth+';height:'+marqueeheight+';overflow:hidden">')
write('<div style="position:absolute;width:'+marqueewidth+';height:'+marqueeheight+';background-color:'+marqueebgcolor+'" onMouseover="copyspeed=pausespeed" onMouseout="copyspeed=marqueespeed">')
write('<div id="iemarquee" style="position:absolute;left:0;top:0"></div>')
write('</div>')
}
else if (document.layers){
write('<ilayer width='+marqueewidth+' height='+marqueeheight+' name="ns_marquee" bgColor='+marqueebgcolor+'>')
write('<layer name="ns_marquee2" left=0 top=0 onMouseover="copyspeed=pausespeed" onMouseout="copyspeed=marqueespeed"></layer>')
write('</ilayer>')
}
document.write('</td></table>')
}
}
</script>
</div>

Wie DAS jetzt wieder genau funktioniert, kann ich nun auch nun auch so auf die Schnelle nicht sagen... *gg* Hauptsache, es tut's gell?



ein projekt von hfl --> goto:www.liesong.de