Autor |
Nachricht |
hannezz
Threadersteller
Dabei seit: 18.09.2008
Ort: -
Alter: -
Geschlecht: -
|
Verfasst Do 18.09.2008 22:59
Titel kleine Frage zu JavaScript |
|
|
Guten Abend
Ich habe mir kürzlich auf http://www.scriptwelt.org/ diesen
''ein und ausblendbaren Layer'' besorgt und diesen auch funktionierend in meine homepage eingebaut..
Nun meine Frage:
Momentan ist der Layer bzw. dessen Inhalt automatisch sichtbar wenn man meine Seite betritt! Ist es möglich die Funktion zu ändern, sodass der Inhalt erst sichtbar wird wenn man auf ''show'' klickt??
hier mal der Code des Layers
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Ein und Ausblendbarer Layer</title>
<script language="JavaScript1.2">
// Script Source: CodeLifter.com
// Copyright 2003
// Do not remove this header
isIE=document.all;
isNN=!document.all&&document.getElementById;
isN4=document.layers;
isHot=false;
function ddInit(e){
topDog=isIE ? "BODY" : "HTML";
whichDog=isIE ? document.all.theLayer : document.getElementById("theLayer");
hotDog=isIE ? event.srcElement : e.target;
while (hotDog.id!="titleBar"&&hotDog.tagName!=topDog){
hotDog=isIE ? hotDog.parentElement : hotDog.parentNode;
}
if (hotDog.id=="titleBar"){
offsetx=isIE ? event.clientX : e.clientX;
offsety=isIE ? event.clientY : e.clientY;
nowX=parseInt(whichDog.style.left);
nowY=parseInt(whichDog.style.top);
ddEnabled=true;
document.onmousemove=dd;
}
}
function dd(e){
if (!ddEnabled) return;
whichDog.style.left=isIE ? nowX+event.clientX-offsetx : nowX+e.clientX-offsetx;
whichDog.style.top=isIE ? nowY+event.clientY-offsety : nowY+e.clientY-offsety;
return false;
}
function ddN4(whatDog){
if (!isN4) return;
N4=eval(whatDog);
N4.captureEvents(Event.MOUSEDOWN|Event.MOUSEUP);
N4.onmousedown=function(e){
N4.captureEvents(Event.MOUSEMOVE);
N4x=e.x;
N4y=e.y;
}
N4.onmousemove=function(e){
if (isHot){
N4.moveBy(e.x-N4x,e.y-N4y);
return false;
}
}
N4.onmouseup=function(){
N4.releaseEvents(Event.MOUSEMOVE);
}
}
function hideMe(){
if (isIE||isNN) whichDog.style.visibility="hidden";
else if (isN4) document.theLayer.visibility="hide";
}
function showMe(){
if (isIE||isNN) whichDog.style.visibility="visible";
else if (isN4) document.theLayer.visibility="show";
}
document.onmousedown=ddInit;
document.onmouseup=Function("ddEnabled=false");
</script>
</head>
<body>
<div id="theLayer" align="center">
<table border="0" width="250" bgcolor="#424242" cellspacing="0" cellpadding="5">
<tr>
<td width="100%">
<table border="0" width="100%" cellspacing="0" cellpadding="0" height="36">
<tr>
<td id="titleBar" style="cursor:move" width="100%">
<ilayer width="100%" onSelectStart="return false">
<layer width="100%" onMouseover="isHot=true;if (isN4) ddN4(theLayer)" onMouseout="isHot=false">
<font face="Arial" color="#FFFFFF">Layer Title</font>
</layer>
</ilayer>
</td>
<td style="cursor:hand" valign="top">
<a href="#" onClick="hideMe();return false"><font color=#ffffff size=2 face=arial style="text-decoration:none">X</font></a>
</td>
</tr>
<tr>
<td width="100%" bgcolor="#FFFFFF" style="padding:4px" colspan="2">
<!-- PLACE YOUR CONTENT HERE //-->
This is where your content goes.<br>
It can be any html code or text.<br>
Remember to feed the reindeer.<br>
Avoid chewable giblet curtains.
<!-- END OF CONTENT AREA //-->
</td>
</tr>
</table>
</td>
</tr>
</table>
</div>
<a href="javascript:showMe();">show</a>
<a href="javascript:hideMe();">hide</a>
</body>
</html>
Ich bin nicht sehr bewandert in Sachen JavaScript und hoffe mir kann jemand helfen bzw. eine kleine Einweisung in die Lösung meines Problems geben!
Ich danke schonmal
|
|
|
|
|
S.Franke
Dabei seit: 27.03.2007
Ort: Bielefeld
Alter: 45
Geschlecht:
|
Verfasst Fr 19.09.2008 07:54
Titel
|
|
|
Hallo,
du musst eigentlich nur in den body onload="HideMe();" einbauen.
Code: | <body onload="HideMe();"> |
LG Stefan
|
|
|
|
|
Anzeige
|
|
|
hannezz
Threadersteller
Dabei seit: 18.09.2008
Ort: -
Alter: -
Geschlecht: -
|
Verfasst Fr 19.09.2008 09:56
Titel
|
|
|
Danke für deine schnelle Antwort! Habe es so gemacht wie du sagtest
<body onload="HideMe();">
<div id="theLayer" align="center">
<table border="0" width="250" bgcolor="#424242" cellspacing="0" cellpadding="5">
<tr>
<td width="100%">
<table border="0" width="100%" cellspacing="0" cellpadding="0"
.
.
.
.
.
zeigt leider keine Wirkung! Der Layer ist nach wie vor beim öffnen automatisch sichtbar
|
|
|
|
|
pixelpapst303
Dabei seit: 06.07.2006
Ort: hamburg
Alter: 50
Geschlecht:
|
Verfasst Fr 19.09.2008 10:03
Titel
|
|
|
wenns nur darum geht, ein gewisses element per click oder onload oder sonstwas ein- und auszublenden, schießt du mit dem script meiner meinung nach mit kanonen auf spatzen...
mach erstmal dein html richtig und fertig, dann sag hier noch mal, was genau wann ein- und ausgeblendet werden soll. da kriegt man sicher fix n dreizeiler hin, der dein prob löst...
|
|
|
|
|
m
Moderator
Dabei seit: 18.11.2004
Ort: -
Alter: -
Geschlecht:
|
Verfasst Fr 19.09.2008 10:23
Titel
|
|
|
pixelpapst303 hat geschrieben: | da kriegt man sicher fix n dreizeiler hin, der dein prob löst... |
Code: | function toggle(obj) {
var el = document.getElementById(obj);
el.style.display = (el.style.display != 'none' ? 'none' : '' );
} |
|
|
|
|
|
pixelpapst303
Dabei seit: 06.07.2006
Ort: hamburg
Alter: 50
Geschlecht:
|
Verfasst Fr 19.09.2008 10:25
Titel
|
|
|
m hat geschrieben: | pixelpapst303 hat geschrieben: | da kriegt man sicher fix n dreizeiler hin, der dein prob löst... |
Code: | function toggle(obj) {
var el = document.getElementById(obj);
el.style.display = (el.style.display != 'none' ? 'none' : '' );
} |
|
könntest du bitte } noch in die dritte zeile packen???
Zuletzt bearbeitet von pixelpapst303 am Fr 19.09.2008 10:25, insgesamt 1-mal bearbeitet
|
|
|
|
|
m
Moderator
Dabei seit: 18.11.2004
Ort: -
Alter: -
Geschlecht:
|
Verfasst Fr 19.09.2008 10:28
Titel
|
|
|
Code: | function toggle(obj) { var el = document.getElementById(obj); el.style.display = (el.style.display != 'none' ? 'none' : '' ); } |
|
|
|
|
|
pixelpapst303
Dabei seit: 06.07.2006
Ort: hamburg
Alter: 50
Geschlecht:
|
Verfasst Fr 19.09.2008 10:33
Titel
|
|
|
m hat geschrieben: | Code: | function toggle(obj) { var el = document.getElementById(obj); el.style.display = (el.style.display != 'none' ? 'none' : '' ); } |
|
kompromiss (ich will meine drei zeilen!!!)
Code: |
// demmseinemultiobjtogglefunction
function toggle(obj) {var el = document.getElementById(obj);el.style.display=(el.style.display!= 'none' ? 'none' : '' );}
// ENDE demmseinemultiobjtogglefunction
|
|
|
|
|
|
|
|
|
Ähnliche Themen |
Javascript - Kleine Denkhilfe bitte ...
javascript observer, kleine Knobelei
PHP include - Kleine Frage
Kleine Frage zu .htaccess
kleine require frage
Kleine Frage zu JS replace
|
|