Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/453.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会使safari崩溃而不是firefox崩溃?_Javascript_Safari_Crash - Fatal编程技术网

为什么javascript会使safari崩溃而不是firefox崩溃?

为什么javascript会使safari崩溃而不是firefox崩溃?,javascript,safari,crash,Javascript,Safari,Crash,我有一个窗格,其中包含一组javascript生成的表,每个表都有一个唯一的ID和4个单元格,我使用以下javascript代码为其中一个表设置背景色。它在Firefox中运行良好,但在Safari第一次尝试设置背景色时(在if语句中)就会崩溃。你知道为什么吗 <script language='Javascript'> function colortree(source) { var el=parent.frames['tree-pane'].document.getE

我有一个窗格,其中包含一组javascript生成的表,每个表都有一个唯一的ID和4个单元格,我使用以下javascript代码为其中一个表设置背景色。它在Firefox中运行良好,但在Safari第一次尝试设置背景色时(在if语句中)就会崩溃。你知道为什么吗

<script language='Javascript'>
  function colortree(source) {
    var el=parent.frames['tree-pane'].document.getElementsByTagName('table');
    for (var i=0;i<el.length;i++) {
        var id = el[i].id;
        if (id) {
           var cell = el[i].getElementsByTagName('td')[3];
           if (id == source) { cell.style.backgroundColor = 'yellow' }
           else { cell.style.backgroundColor = 'white' };
        }
    }
    return false;
  }
</script>

函数colortree(源代码){
var el=parent.frames['tree-pane'].document.getElementsByTagName('table');

对于(var i=0;i,如果数组索引可能不存在,则应始终测试它们的存在性

e、 g


函数colortree(源代码){
var细胞,细胞,id;
var el=parent.frames['tree-pane'].document.getElementsByTagName('table');

对于(var i=0;i,如果数组索引可能不存在,则应始终测试它们的存在性

e、 g


函数colortree(源代码){
var细胞,细胞,id;
var el=parent.frames['tree-pane'].document.getElementsByTagName('table');
对于(var i=0;i)您的表是否都至少有4个单元格?如果没有,您的硬编码[3]引用将无效。您的表是否都至少有4个单元格?如果没有,您的硬编码[3]引用将无效。
<script language='Javascript'>
  function colortree(source) {
    var cells, cell, id;
    var el=parent.frames['tree-pane'].document.getElementsByTagName('table');
    for (var i=0;i<el.length;i++) {
        id = el[i].id;
        if (id) {
           cells = el[i].getElementsByTagName('td');
           if (cells[3]) {
               cell = cells[3];
               if (id == source) { cell.style.backgroundColor = 'yellow' }
               else { cell.style.backgroundColor = 'white' };
           }
        }
    }
    return false;
  }
</script>