我在<head>
中有以下javascript函数来切换<div>
的可见性
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.4/jquery.min.js"></script>
<script type="text/javascript">
function toggleAndChange(aID,divID) {
$(divID).toggle();
if ($(divID).css('display') == 'none') {
$(aID).html('Show Description');
} else {
$(aID).html('Hide Description');
}
}
</script>
在<body>
我有以下代码
<a id="description_visibility" href="javascript:toggleAndChange(description_visibility,description);">Hide Description</a><br />
<div id="description">....</div>
这在IE和Chrome中运行良好。在FF中,当我点击链接时没有任何反应。当我拿起Firebug并点击链接时说:
description_visibility is not defined
为什么FF无法识别<a>
ID?或者我错过了什么?我的Mac上的FF 9.0.1和我的PC上的FF 8.0.1都出现问题
答案 0 :(得分:1)
你必须使用单引号'#description_visibility'和'#description'
<a id="description_visibility" href="javascript:toggleAndChange('#description_visibility','#description')"></a>
还有数字符号来指明那些是IDS
答案 1 :(得分:1)
在某些浏览器中,您依赖于非标准功能,它们将所有元素ID作为属性映射到映射到这些元素的全局对象。 Firefox只在quirks模式下执行此操作,而不是在标准模式下执行此操作。