这应该很容易,但它不能正常工作......我对javascript很生疏,无法弄清楚我错过了什么。
我有一个导航栏,当人们点击小箭头时我想消失,只留下第二个箭头。当用户单击第二个箭头时,导航栏会重新出现。所有的导航栏都在一个标签中。导航菜单本身很长,原因之一是我想让用户能够打开和关闭它。
head中的Javascript函数如下:
<script type="text/javascript">
function collapseMenu()
{document.getElementById("navbar").innerHTML ='<td id=navbar2><a href="javascript:void(0)" onclick="collapseMenu('navbar2');"><img src="arrow.gif"></a></td>';
}</script>
页面上的文字是:
<div id='navbar'>
<td>
<a href="javascript:void(0)" onclick="collapseMenu('navbar');"><img src="arrow.gif"></a>
</td>
</div>
将 id 放在 div 标签中,当您单击链接时它会显示箭头,但不会删除 div 标签之间的旧 html。使用 span 而不是 div 也是一样,单引号和双引号之间没有区别。当我将 id="navbar" 移动到标签时,导航栏确实消失了,但它使旧 td 标签大小的背景颜色保持不变。我希望它变成空白,除了小箭头。所以问题 1 是为什么 div 和 span 不起作用,或者 td 在旧空间中留下背景颜色。
第二个问题是如何通过变量在文本中指定 innerHTM。不必将所有这些都放在标题中会很好。
感谢您的任何想法!