Bindestrich einfügen ohne Zeilenumbruch
Gunnar
- javascript
Hallo Leute,
ich kenne mich mit Scripten kaum aus.
Ich möchte bei einer Mausanimation, wo der Text immer bei der Maus bleibt, in dem Text ein Bindestrich einbauen. Der Text soll dann exakt so aussehen, wobei zwischen spezial und tipp kein Zeilenumbruch entsteht:
Willkommen bei
spezial-tipp!
Ich habe es auch schon mit folgenden Varianten versucht:
var message='Willkommen bei <nobr>spezial-tipp!</nobr>';
var message='Willkommen bei <nowrap>spezial-tipp!</nowrap>';
var message='Willkommen bei <span style="white-space:nowrap;">spezial-tipp!</span>';
Das klappt dann zwar auch, jedoch bleibt der Text dann zusätzlich oben links im Browser permanent stehen und das soll er nun auch nicht.
Hier der Link zu meinem Problem:
http://www.gm.fh-koeln.de/~ai324/eBayISAP.htm
Schon einmal Danke für Eure Mühe.
Gunnar
Hallo Gunnar,
Hier der Link zu meinem Problem:
http://www.gm.fh-koeln.de/~ai324/eBayISAP.htm
Ich denke, das Problem liegt an deinem Script, und es hilft
recht wenig, nur die eine Variablendefinition hier zu posten.
Allerdings habe ich auch keine Zeit und Lust ;-), den Code
durchzugucken, aber hier ein kleiner Tipp: Versuch's doch ein-
fach mal mit einem Zeilenumbruch <br /> bzw. <br> bei herkömm-
lichem HTML.
Bye,
Peter
Hallo Peter,
Ich denke, das Problem liegt an deinem Script
Das glaube ich mittlerweile leider auch.
Allerdings habe ich auch keine Zeit und Lust ;-), den Code
durchzugucken
Hat eventuell ein anderer die Zeit und Lust? Hier ist er:
<SCRIPT language=JavaScript1.2>
<!--
var message='Willkommen bei spezial-tipp!';
var messagecolor='#FF0000'
//Enter number of seconds for message to display (0=perpetual)
var dismissafter=10
///no need to edit below/////////
var amount=5,ypos=0,xpos=0,Ay=0,Ax=0,By=0,Bx=0,Cy=0,Cx=0,Dy=0,Dx=0,Ey=0,Ex=0;
if (document.layers){
for (i = 0; i < amount; i++)
{document.write('<layer name=ns'+i+' top=0 left=0><font face="Courier New" size=3 color='+messagecolor+'>'+message+'</font></layer>')}
window.captureEvents(Event.MOUSEMOVE);
function nsmouse(evnt){xpos = evnt.pageX;ypos = evnt.pageY;makefollow()}
}
else if (document.all){
document.write("<div id='outer' style='position:absolute;top:0px;left:0px'>");
document.write("<div id='inner' style='position:relative'>");
for (i = 0; i < amount; i++)
{document.write('<div id="text"'+i+' style="position:absolute;top:0px;left:0px;font-family:Courier New;font-size:16px;color:'+messagecolor+'">'+message+'</div>')}
document.write("</div>");
document.write("</div>");
function iemouse(){ypos = document.body.scrollTop + event.y;xpos = document.body.scrollLeft + event.x;makefollow()}
}
function makefollow(){
if (document.layers){
document.layers["ns0"].top=ay;document.layers["ns0"].left=ax;
document.layers["ns1"].top=by;document.layers["ns1"].left=bx;
document.layers["ns2"].top=cy;document.layers["ns2"].left=cx;
document.layers["ns3"].top=Dy;document.layers["ns3"].left=Dx;
document.layers["ns4"].top=Ey;document.layers["ns4"].left=Ex;
}
else if (document.all){
outer.all.inner.all[0].style.pixelTop=ay;outer.all.inner.all[0].style.pixelLeft=ax;
outer.all.inner.all[1].style.pixelTop=by;outer.all.inner.all[1].style.pixelLeft=bx;
outer.all.inner.all[2].style.pixelTop=cy;outer.all.inner.all[2].style.pixelLeft=cx;
outer.all.inner.all[3].style.pixelTop=Dy;outer.all.inner.all[3].style.pixelLeft=Dx;
outer.all.inner.all[4].style.pixelTop=Ey;outer.all.inner.all[4].style.pixelLeft=Ex;
}
}
function move(){
if (dismissafter!=0)
setTimeout("hidetrail()",dismissafter*1000)
if (document.layers){window.onMouseMove = nsmouse}
else if (document.all){window.document.onmousemove = iemouse}
ey = Math.round(Ey+=((ypos+20)-Ey)*2/2);ex = Math.round(Ex+=((xpos+20)-Ex)*2/2);
dy = Math.round(Dy+=(ey - Dy)*2/4);dx = Math.round(Dx+=(ex - Dx)*2/4);
cy = Math.round(Cy+=(dy - Cy)*2/6);cx = Math.round(Cx+=(dx - Cx)*2/6);
by = Math.round(By+=(cy - By)*2/8);bx = Math.round(Bx+=(cx - Bx)*2/8);
ay = Math.round(Ay+= (by - Ay)*2/10);ax = Math.round(Ax+= (bx - Ax)*2/10);
makefollow();
jumpstart=setTimeout('move()',10);
}
function hidetrail(){
if (document.all){
for (i2=0;i2<amount;i2++){
outer.all.inner.all[i2].style.visibility="hidden"
clearTimeout(jumpstart)
}
}
else if (document.layers){
for (i2=0;i2<amount;i2++){
temp="ns"+i2
document.layers[temp].visibility="hide"
clearTimeout(jumpstart)
}
}
}
window.onload=move;
//-->
</SCRIPT>
aber hier ein kleiner Tipp: Versuch's doch ein-
fach mal mit einem Zeilenumbruch <br /> bzw. <br> bei herkömm-
lichem HTML.
Genau diesen Zeilenumbruch zwischen spezial (dann der Bindestrich) und tipp will ich ja nicht. Also exakt so soll es aussehen:
Willkommen bei
spezial-tipp!
Danke für deine Tipps, bin dennoch ein Stück vorangekommen :-)
Es grüßt euch
Gunnar
Hallo Gunnar,
aber hier ein kleiner Tipp: Versuch's doch ein-
fach mal mit einem Zeilenumbruch <br /> bzw. <br> bei herkömm-
lichem HTML.Genau diesen Zeilenumbruch zwischen spezial (dann der Bindestrich) und tipp will ich ja nicht. Also exakt so soll es aussehen:
Willkommen bei
spezial-tipp!
Willkommen bei<br />spezial-tipp!
Bye,
Peter
Hallo Peter,
Willkommen bei<br />spezial-tipp!
Klappt leider auch nicht. Text bleibt immer noch zusätzlich oben links im Fenster stehen. Dort steht er nun aber perfekt, nämlich:
Willkommen bei
spezial-tipp!
Der Text der dann aber auch noch zur Maus fliegt sind jedoch so aus:
tipp!
Habe auch schon andere Scripte über Mausverfolger ausprobiert. Dort kann ich den Bindestrich ohne weiteres einfügen, sieht dann auch perfekt aus. Diese Scripte haben nur leider nicht das Feature, dass das Mausbanner nicht nach einer voreingestellten Zeit ausgeblendet wird. Und ich möchte keinem Besucher diesen Text nun immer zumuten.
Vielleicht kennt jemand ja ein Script, irgendwo im Web, wo sich der Text auch zeitgesteuert ausblenden läßt.
Habe dieses Script jedoch nicht weiter über Google gefunden. Halt nur mein defektes(wenn man einen Bindestrich einfügen will) bei http://www.raubfische.de/script27.htm
Nochmals DANKE für Deinen Tipp Peter.
Gruß
Gunnar
Hallo Gunnar,
Habe auch schon andere Scripte über Mausverfolger ausprobiert. Dort kann ich den Bindestrich ohne weiteres einfügen, sieht dann auch perfekt aus. Diese Scripte haben nur leider nicht das Feature, dass das Mausbanner nicht nach einer voreingestellten Zeit ausgeblendet wird. Und ich möchte keinem Besucher diesen Text nun immer zumuten.
Setz' doch einfach die CSS-Eigenschaft display nach einer gewissen
Zeit auf none ...
Bye,
Peter
Hallo Peter,
Setz' doch einfach die CSS-Eigenschaft display nach einer gewissen
Zeit auf none ...
Ich glaube ich lass es jetzt sein. CSS-Eigenschaft?? Wie gesagt, ich habe keine Ahnung von Scripten. Das geht ja jetzt wohl richtig ins Eingemachte. Ich zeige dir nochmal ein Script, wo es mit dem Bindestrich klappt, halt nur nicht die Ausblendung. Wenn es für dich ein leichtes ist, dort mir die CSS-Eigenschaft zu zeigen, wäre ich dir sehr dankbar. Erfordert es aber für dich zuviel Aufwand, da ich keine Ahnung habe, dann lass es gut sein. Ich wünsche dir dann jetzt schon mal ein erfolgreiches und gesundes Neues Jahr!!
Alles Gute
Gunnar
Hier das Script:
<SCRIPT LANGUAGE="JavaScript">
<!--
message = 'Willkommen bei<br>spezial-tipp!'; // Ihr Text
FonT = 'Verdana'; // Ihre Schriftart
ColoR = '55ff55'; // Ihre Schriftfarbe
SizE = 4; // Ihre Schriftgrösse (nur 1 bis 7)!
var amount = 5, ypos =- 50, xpos = 0, Ay = 0, Ax = 0, By = 0, Bx = 0, Cy = 0, Cx = 0, Dy = 0, Dx = 0, Ey = 0, Ex = 0;
if (document.layers) {
for (i = 0; i < amount; i++) {
document.write('<layer name=nsl'+i+' top=0 left=0><font face='+FonT+' size='+SizE+' color='+ColoR+'>'+message+'</font></layer>');
}
window.captureEvents(Event.MOUSEMOVE);
function nsmouse(evnt) {
xpos = evnt.pageX + 20;
ypos = evnt.pageY + 20;
}
window.onMouseMove = nsmouse;
}
else if (document.all) {
document.write("<div id='outer' style='position:absolute;top:0px;left:0px'>");
document.write("<div style='position:relative'>");
for (i = 0; i < amount; i++) {
document.write('<div id="text"'+i+' style="position:absolute;top:0px;left:0px;width:400px;height:20px"><font face='+FonT+' size='+SizE+' color='+ColoR+'>'+message+'</font></div>')
}
document.write("</div>");
document.write("</div>");
function iemouse() {
ypos = event.y + 20;
xpos = event.x + 20;
}
window.document.onmousemove = iemouse;
}
function makefollow() {
if (document.layers) {
document.layers['nsl'+0].top = ay;
document.layers['nsl'+0].left = ax;
document.layers['nsl'+1].top = by;
document.layers['nsl'+1].left = bx;
document.layers['nsl'+2].top = cy;
document.layers['nsl'+2].left = cx;
document.layers['nsl'+3].top = Dy;
document.layers['nsl'+3].left = Dx;
document.layers['nsl'+4].top = Ey;
document.layers['nsl'+4].left = Ex;
}
else if (document.all) {
outer.style.pixelTop = document.body.scrollTop;
text[0].style.pixelTop = ay;
text[0].style.pixelLeft = ax;
text[1].style.pixelTop = by;
text[1].style.pixelLeft = bx;
text[2].style.pixelTop = cy;
text[2].style.pixelLeft = cx;
text[3].style.pixelTop = Dy;
text[3].style.pixelLeft = Dx;
text[4].style.pixelTop = Ey;
text[4].style.pixelLeft = Ex;
}
}
function move() {
ey = Ey += (ypos - Ey) * 0.2;
ex = Ex += (xpos - Ex) * 0.2;
dy = Dy += (ey - Dy) * 0.3;
dx = Dx += (ex - Dx) * 0.3;
cy = Cy += (dy - Cy) * 0.4;
cx = Cx += (dx - Cx) * 0.4;
by = By += (cy - By) * 0.5;
bx = Bx += (cx - Bx) * 0.5;
ay = Ay += (by - Ay) * 0.6;
ax = Ax += (bx - Ax) * 0.6;
makefollow();
setTimeout('move()', 10);
}
window.onload=move;
// -->
</script>
</body>
<script language="JavaScript">
<!--
window.open = SymRealWinOpen;
//-->
</script>
Hallo Gunnar,
Ich glaube ich lass es jetzt sein. CSS-Eigenschaft?? Wie gesagt, ich habe keine Ahnung von Scripten. Das geht ja jetzt wohl richtig ins Eingemachte. Ich zeige dir nochmal ein Script, wo es mit dem Bindestrich klappt, halt nur nicht die Ausblendung. Wenn es für dich ein leichtes ist, dort mir die CSS-Eigenschaft zu zeigen, wäre ich dir sehr dankbar. Erfordert es aber für dich zuviel Aufwand, da ich keine Ahnung habe, dann lass es gut sein. Ich wünsche dir dann jetzt schon mal ein erfolgreiches und gesundes Neues Jahr!!
Setz einen Timeout für:
document.getElementById('text').style.display = 'none';
Wie das geht, steht in SelfHTML, guck mal nach der Funktion
window.setTimeout().
Bye,
Peter