Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/396.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
这个Javascript代码有什么问题?_Javascript_Html_Xhtml_Dom Events - Fatal编程技术网

这个Javascript代码有什么问题?

这个Javascript代码有什么问题?,javascript,html,xhtml,dom-events,Javascript,Html,Xhtml,Dom Events,我相信这个代码块上的某些内容没有正确编码,这使得它在XHTML1.0上不兼容 代码段折叠div,然后单击展开 有人能看出哪里出了问题吗 <script type="text/javascript"> function toggle(div){ el = document.getElementById(div); if (el.style.display == 'none') { el.style.display = ''; } else {

我相信这个代码块上的某些内容没有正确编码,这使得它在XHTML1.0上不兼容

代码段折叠div,然后单击展开

有人能看出哪里出了问题吗

<script type="text/javascript">

function toggle(div){
el = document.getElementById(div);
    if (el.style.display == 'none')
    {
        el.style.display = '';
    } else {
        el.style.display = 'none';
    }
}

</script>

功能切换(div){
el=document.getElementById(div);
如果(el.style.display==“无”)
{
el.style.display='';
}否则{
el.style.display='none';
}
}

我在
标签前面有这个。如果我删除DOCTYPE另一个菜单,我会停止工作,但是默认情况下,行会扩展,不会折叠。

而不是
el.style.display=''尝试
el.style.display='block'

您不应该设置
style.display='
,而应该将其设置为
'block'
'inline'
'table-row'

  • 您应该检查传递的参数是否有效(例如,not
    undefined
    、空字符串等)
  • 您应该检查
    document.getElementById(div)
    是否找到了该元素(例如,在加载文档时,即使是有效名称也不起作用,
    在源代码中早于您所引用的元素)
  • 您正在创建全局变量
    el
    (将
    var
    放在赋值前面)
  • W3C建议尽可能避免使用过渡DTD,现在可以不使用
    bgcolor
    。使用XHTMLStrict,除非您不知道MIME类型是什么,否则请使用HTML5

  • div上的简单显示css属性出现问题。出现了标记错误。

    是否传入了div的ID而不是类?e)没有足够的信息来回答问题。这会更糟
    display=''
    很好地恢复为默认值,可能需要是
    表行
    内联
    ,等等@porenel-是否在所有浏览器上都恢复为默认值?是。在任何情况下都是完美的
    .style
    是HTML
    style
    属性的便捷接口。它不是元素的实际计算样式,因此删除覆盖没有什么害处(就像从HTML中删除
    style
    属性没有害处一样)。