Problem mit PopUp Box
Evolution
- javascript
hallo.... ich hab ein kleines problem mit dem script hier.... eigentlich läuft das ja perfekt.... nur wenn ich 2 boxen machen will kommen die sich in die quere und kann die net mehr weg nehmen.... kann mir vll einer versuchen zu erkälren warum?
_________________________________________________
<head>
<script language="JavaScript1.2">
var ns4=document.layers
var ie4=document.all
var ns6=document.getElementById&&!document.all
var dragswitch=0
var nsx
var nsy
var nstemp
function drag_dropns(name){
if (!ns4)
return
temp=eval(name)
temp.captureEvents(Event.MOUSEDOWN | Event.MOUSEUP)
temp.onmousedown=gons
temp.onmousemove=dragns
temp.onmouseup=stopns
}
function gons(e){
temp.captureEvents(Event.MOUSEMOVE)
nsx=e.x
nsy=e.y
}
function dragns(e){
if (dragswitch==1){
temp.moveBy(e.x-nsx,e.y-nsy)
return false
}
}
function stopns(){
temp.releaseEvents(Event.MOUSEMOVE)
}
//drag drop function for ie4+ and NS6////
/////////////////////////////////
function drag_drop(e){
if (ie4&&dragapproved){
crossobj.style.left=tempx+event.clientX-offsetx
crossobj.style.top=tempy+event.clientY-offsety
return false
}
else if (ns6&&dragapproved){
crossobj.style.left=tempx+e.clientX-offsetx
crossobj.style.top=tempy+e.clientY-offsety
return false
}
}
function initializedrag(e){
crossobj=ns6? document.getElementById("showimage") : document.all.showimage
var firedobj=ns6? e.target : event.srcElement
var topelement=ns6? "HTML" : "BODY"
while (firedobj.tagName!=topelement&&firedobj.id!="dragbar"){
firedobj=ns6? firedobj.parentNode : firedobj.parentElement
}
if (firedobj.id=="dragbar"){
offsetx=ie4? event.clientX : e.clientX
offsety=ie4? event.clientY : e.clientY
tempx=parseInt(crossobj.style.left)
tempy=parseInt(crossobj.style.top)
dragapproved=true
document.onmousemove=drag_drop
}
}
document.onmousedown=initializedrag
document.onmouseup=new Function("dragapproved=false")
////drag drop functions end here//////
function hidebox(){
if (ie4||ns6)
crossobj.style.visibility="hidden"
else if (ns4)
document.showimage.visibility="hide"
}
</script>
<head>
<div id="showimage" style="position:absolute;width:250px;left:200;top:100">
<table border="0" width="400" bgcolor="#BFA0E3" cellspacing="0" cellpadding="2">
<tr>
<td width="100%"><table border="0" width="100%" cellspacing="0" cellpadding="0"
height="36">
<tr>
<td id="dragbar" style="cursor:hand" width="100%" height="20"><ilayer width="100%" onSelectStart="return false"><layer width="100%" onMouseover="dragswitch=1;if (ns4) drag_dropns(showimage)" onMouseout="dragswitch=0"><font face="Verdana"
color="#FFFFFF"><strong>Message Box</strong></font></layer></ilayer></td>
<td style="cursor:hand" valign="middle"><a href="#" onClick="hidebox();return false" style="text-decoration:none"><b><font color="#f5f5f5">x</font></b></a></td>
</tr>
<tr>
<td width="100%" height="120" bgcolor="#FFFFFF" style="padding:4px" colspan="2" valign="top">
<!-- Inhalt ---->
<table border=0 width="100%">
{FOREACH|$msg|$offlinemsgs}
<tr>
<font size="1" face="Verdana" color="#BFA0E3">{GET|$msg}</font>
</tr>
{ENDFOR}
</table>
<!-- Inhalt----->
</td>
</tr>
</table>
</td>
</tr>
</table>
</div>
Liebe(r) Evolution,
<script language="JavaScript1.2">
das hier sieht sehr, sehr veraltet aus! Man schreibt heute unbedingt type="text/javscript" dazu!
var ns4=document.layers
var ie4=document.all
var ns6=document.getElementById&&!document.all
Auch wieder Anzeichen auf ein sehr altes Script...
{FOREACH|$msg|$offlinemsgs}
{ENDFOR}
Was ist das? Verwendest Du ein CMS, oder irgendeine Art von Templates?
</table>
<!-- Inhalt----->
</td>
</tr>
</table>
</td>
</tr>
</table>
</div>
Tabelle als Layout-Mittel missbraucht... Heute gibt es da sinnvollere Methoden den Content zu layouten.
Ich kann und möchte Dir mit Deinem Script nicht helfen, denke aber, dass meine Kritikpunkte deshalb trotzdem nicht fehl am Platze sind. Semantisch korrektes HTML in Verbindung mit CSS ist hier allgemeinhin akzeptierte vernünftige Praxis beim Seitengestalten.
Was den veralteten Code angeht, so solltest Du Dich an den Autor des Scriptes wenden, wenn Deine eigenen Javascript-Fähigkeiten noch nicht ausreichen. Ansonsten hilft nur das Studieren von JS und Deines Scriptes, um die notwendigen Fähigkeiten selbst zu erlernen (Self-Gedanke!).
Liebe Grüße aus Ellwangen,
Felix Riesterer.