Ik zoek een goed script waarbij je op een balk klikt en er dan een div open schuift waarin reacties komen te staan. Een voorbeeld: www.caz.nl Klik op reacties(0) Dan verschijnen die reacties. Ik heb al geprobeerd om dat script te jatten, alleen het is me nog niet gelukt:S Wie kan mij helpen?

je doet bij reacties:

<a href="#" onclick="javascript:getDocumentById(reactie).style.display = 'block';">Reacties (1)</a>

En de reacties zet je in een div
<div id="reactie" style="display: none;">
</div>
Dan krijg ik een fout, object wordt verwacht zegt hij. Ik zit gewoon local te bouwen ligt het daaraan?
Dit script heb ik uit de bron van caz :P Bij mij werkt ie.


<html>
<head>
<SCRIPT LANGUAGE="JavaScript">
<!--
function showReplies (numArticle) {
	if (document.all) {
		if(document.getElementById("replies"+numArticle).style.display  == "none") {
			document.getElementById("replies"+numArticle).style.display  = "block";
		} else {
			document.getElementById("replies"+numArticle).style.display  = "none";
		}
	} else {
		var allArray = document.getElementsByTagName("div");
		idName = "replies"+numArticle;
		for (i=0; i < allArray.length ; i++) {
			if (allArray[i].id==idName) { 
				if(allArray[i].style.display == "none") {
					allArray[i].style.display = "block";					
				} else {
					allArray[i].style.display = "none";					
				}
			}
		}					
	}
}
//-->
</SCRIPT>
</head>
<body>
<table border="0" cellspacing="0" cellpadding="0" width="583">
	<tr>
		<td onClick="javascript:showReplies(1639)"><span class="readmore">Tekst tonen</span></td>
	</tr>
</table>															

<div id="replies1639" style="display:none;">									
Hier verborgen tekst

<table border="0" cellspacing="0" cellpadding="0" width="583">
	<tr>
		<td onClick="showReplies(1639)">
		<table border="0" cellspacing="0" cellpadding="0">
			<tr>
				<td align="left" valign="middle"><span class="readmore">VERBERG REACTIES</span>&nbsp;</td>
			</tr>
		</table>
		</td>
	</tr>
</table>

</div>									
								
</body>
</html>


edit: code tags toegevoegd
Bij mij nu ook, bedankt, nu nog veranderen:P
Alleen werkt hij bij jou ook in FireFox? Bij mij alleen in IE:(
Ik heb standaard FF dus ja, hij werkte daarin. Niet in IE geprobeert. Heb je zonder iets te wijzigen geprobeert in FF?

EDIT:
Marthijn, probeer deze eens met FF:
http://phphulp.turmin.com/showhide.php
Checkboxje voor javascript uitschakelen uitgefinkt. Alles werkt. Bedankt
Oke mooi zo! :-) Graag gedaan.
Ik had in m'n voorbeeld (link) nog een onmouseover style pointer toegevoegd, misschien ook handig om te gebruiken.
Met slide effect, lijkt moeilijker dan dat het is, werkt in IE en FF:

*LET OP: Geef breedte en hoogte aan!!!
*TIP: Sla Javascript op als external JS!

===========
HTML GEWOON:|
===========

<div class="mainDiv" state="0">
<div class="topItem" classOut="topItem" classOver="topItemOver" onMouseOver="Init(this);">
JOUWTEKST GEEN SLIDING</div>
<div class="dropMenu" >
<div class="subMenu" state="0">
<span class="subItem" classOut="subItem" classOver="subItemOver">JOUWTEKST WEL SLIDING</span>
</div></div></div>

====
CSS |
====

.mainDiv {
width:148px;
}

.topItem {
width: 148px;
cursor: pointer;
background: #165EFD;
text-decoration: none;
color: white;
font-weight: bold;
font-family: Times New Roman;
font-size: 10px;
}

.dropMenu {
background: #0F40AD;
border-left: 1px solid #165EFD;
border-right: 1px solid #165EFD;
border-bottom: 1px solid #165EFD;
}

.subMenu {
display:none;
}

.subItem {
color: #0F40AD;
font-weight: bold;
padding-left: 0px;
text-decoration: none;
}

.subItemOver {
color: #0F40AD;
font-weight: bold;
padding-left: 0px;
text-decoration: none;
{

.drop {
border-left: 0px solid black;
border-right: 0px solid black;
}

.Item {
color: #0F40AD;
font-weight: bold;
padding-left: 0px;
text-decoration: none;
}

========
Javascript |
========

var TIMER_SLIDE = null;
var OBJ_SLIDE;
var OBJ_VIEW;
var PIX_SLIDE = 9;
var NEW_PIX_VAL;
var DELAY_SLIDE = 30;
var DIV_HEIGHT = 22;
var SUB_MENU_NUM =0;
var RE_INIT_OBJ = null;
var bMenu = document.getElementById("curMenu");
var MainDiv,SubDiv

//VANAF HIER NIET MEER VERANDEREN

document.write('<div id="tempcontainer" class="mainDiv" style="visibility: hidden; position: absolute"></div>')

function Init(objDiv)
{
if (TIMER_SLIDE == null)
{
SUB_MENU_NUM = 0;
MainDiv = objDiv.parentNode;
SubDiv = MainDiv.getElementsByTagName("DIV").item(0);
SubDiv.onclick = SetSlide;

OBJ_SLIDE = MainDiv.getElementsByTagName("DIV").item(1)
OBJ_VIEW = OBJ_SLIDE.getElementsByTagName("DIV").item(0);

document.getElementById("tempcontainer").innerHTML=MainDiv.getElementsByTagName("DIV").item(2).innerHTML
DIV_HEIGHT=document.getElementById("tempcontainer").offsetHeight

for (i=0;i<OBJ_VIEW.childNodes.length;i++)
{
if (OBJ_VIEW.childNodes.item(i).tagName == "SPAN")
{
SUB_MENU_NUM ++;
OBJ_VIEW.childNodes.item(i).onmouseover= ChangeStyle;
OBJ_VIEW.childNodes.item(i).onmouseout= ChangeStyle;
}
}

NEW_PIX_VAL = parseInt(MainDiv.getAttribute("state"));
}

}
function SetSlide()
{
if (window.TIMER_SLIDE) clearInterval(TIMER_SLIDE)
if (TIMER_SLIDE == null && this.parentNode == MainDiv)
TIMER_SLIDE = setInterval('RunSlide()', DELAY_SLIDE);
else
{
RE_INIT_OBJ = this;
setTimeout('ReInit()', 200);
}
}

function ReInit(obj)
{
Init(RE_INIT_OBJ);
TIMER_SLIDE = setInterval('RunSlide()', DELAY_SLIDE);
RE_INIT_OBJ = null;
}

function RunSlide()
{

if (OBJ_VIEW.getAttribute("state") == 0)
{

NEW_PIX_VAL += PIX_SLIDE;
OBJ_SLIDE.style.height = NEW_PIX_VAL;

if (NEW_PIX_VAL >= DIV_HEIGHT)
{
clearInterval(TIMER_SLIDE);
TIMER_SLIDE = null;
OBJ_VIEW.style.display = 'inline';
OBJ_VIEW.setAttribute("state","1")
MainDiv.setAttribute("state",NEW_PIX_VAL);
}
} else
{
OBJ_VIEW.style.display = 'none';
NEW_PIX_VAL -= PIX_SLIDE;
if(NEW_PIX_VAL > 0)OBJ_SLIDE.style.height = NEW_PIX_VAL;
if (NEW_PIX_VAL <= 0)
{
NEW_PIX_VAL = 0;
OBJ_SLIDE.style.height = NEW_PIX_VAL
clearInterval(TIMER_SLIDE);
TIMER_SLIDE = null;
OBJ_VIEW.setAttribute("state","0")
MainDiv.setAttribute("state",NEW_PIX_VAL);
}
}
}

function ChangeStyle()
{
if (this.className == this.getAttribute("classOut"))
this.className = this.getAttribute("classOver");
else
this.className = this.getAttribute("classOut");
}

=====
EINDE|
=====
Ik vond het andere script compacter, en hij werkt nu ook dus die houd ik daarom. Het moet niet te special worden. Maar toch bedankt.

Reageren