Visibility eines Objekts anhand der ID ändern

Mik3e

Erfahrenes Mitglied
Hi Zusammen!

Habe folgendes Objekt auf einem Document:
HTML:
<p id="objectcontainer" name="objectcontainer">
<img id="1" src="img/test.gif" border="0">
</p>
Dieses Objekt IMG (ID:1) soll nun einfach durch eine Funktion ausgeblendet werden.
HTML:
<script language="javascript">
function DeleteObject(objectID) {
	alert(objectID); // --> 1
	document.getElementById(objectID).visibility='hide';
}
</script> 
<A href="javascript:DeleteObject('1');">Objekt löschen</A>
Leider passiert jedoch gar nichts... Nicht mal ne Fehlermeldung...
Wisst Ihr vielleicht, wo der Fehler liegen könnte? Oder gibt es eine andere Möglichkeit, ein Objekt zu entfernen

Danke & LG
Mike
 
Danke, hab den Fehler schon gefunden..
visibility='hidden' (nicht 'hide')
Hide gibt es nur bei Layern...
 
Ich hab eine Folgefrage dazu zum theme div layer ein und ausblenden:
Wenn ich ein div-layer ausblende, wie bekomme ich dann die entstehende lücke weg, sprich der inhalt darunter soll nach oben rutschen.

ich hab bisher versucht, die höhe des layers zeitgleich zu verkleinern, das sorgt dafür, dass der text darunter nach oben rutscht, aber wenn ich nun den layer einblenden will, wird der divlayer über den anderen text geschrieben.

Testseite zu finden unter: Klick mich

Quellcode:
Code:
<html>
<head>
<script language="JavaScript" version="1.4">
function wechsel() {
  // sichtbar/unsichtbar
  if (document.getElementById('muh').style.visibility == 'hidden')
    document.getElementById('muh').style.visibility = 'visible';
  else
    document.getElementById('muh').style.visibility = 'hidden';
  // höhe von td wird variiert
  if (document.getElementById('mah').style.height == '0')
    document.getElementById('mah').style.height = '160';
  else
    document.getElementById('mah').style.height = '0';
  // höhe vom divlayer wird variiert
  if (document.getElementById('muh').style.height == '0')
    document.getElementById('muh').style.height = '160';
  else
    document.getElementById('muh').style.height = '0';
}
</script>
</head>

<body>
<input name="switch" type="button" value="switch" onClick="wechsel()">
<table>
  <tr>
    <!-- diese Zelle wird in ihrer größe verändert, aber nur verkleinern gelingt -->
    <td id="mah">
    <!-- dieses Layer wird sicht-/unsichtbar sowie in der höhe verändert -->
      <div id="muh">mbla lkjndsfölkjsadf asdfj aösldkfj asdfa<br>
		asdfäkljasdföljapmadspfv cspodafcn aspdo fxapsodfc<br>
		akdsjfioavjmpaoijrecoisdfjvnglöksdfjgcsdfgcsdfgv
      </div>
    </td>
  </tr>
</table>
<!-- dieser Text soll mit nach oben/unten rutschen -->
ein kleiner test :)
</body>
</html>
 
Die Frage hatten wir hier schon tausend mal. Bitte Forensuche benutzen!

Wie auch immer wenn du style.display = 'block' bzw. 'none' verwendest statt style.visibility= 'hidden' bzw. 'visible' hast du, was du willst. Hab dein Script noch ein wenig vereinfacht:
HTML:
<html>
  <head>
  <script language="JavaScript" version="1.4">
  function swap(id) {
  	var obj = document.getElementById(id);
  	obj.style.display = (obj.style.display == 'none') ? 'block' : 'none';
  }
  </script>
  </head>
  
  <body>
  <input name="switch" type="button" value="switch" onClick="swap('muh')">
  <table>
  <tr>
  <!-- diese Zelle wird in ihrer größe verändert, aber nur verkleinern gelingt -->
  <td id="mah">
  <!-- dieses Layer wird sicht-/unsichtbar sowie in der höhe verändert -->
  <div id="muh">mbla lkjndsfölkjsadf asdfj aösldkfj asdfa<br>
  		asdfäkljasdföljapmadspfv cspodafcn aspdo fxapsodfc<br>
  		akdsjfioavjmpaoijrecoisdfjvnglöksdfjgcsdfgcsdfgv
  </div>
  </td>
  </tr>
  </table>
  <!-- dieser Text soll mit nach oben/unten rutschen -->
  ein kleiner test
  </body>
  </html>
 
Zuletzt bearbeitet:

Neue Beiträge

Zurück