1

我使用 Joomla!利用 DHTMLxGrid 库的插件,特别是 1.5 版。打开使用此 DHTMLx Grid 功能的页面时出现问题,Firefox 一切正常,但是,当我在 Chrome(7 和 8)中打开页面时,浏览器在 dhtmlxgrid.js 文件的第 60 行遇到异常,触发通过网格的初始化。我已经包含了几行代码,我知道这是非常有限的数据,但这是我能够在这里作为总结的内容。我希望有人遇到类似的问题。我对 JS 的了解有限,因此非常感谢任何帮助。

如果您需要更多细节,请告诉我,我会尝试包含更多数据。

谢谢!

php文件:

function gridInit(){
    mygrid = new dhtmlXGridObject('gridbox');
    mygrid.setImagePath("http://mydomain.com//administrator/components/com_com/images/dhtmlxGrid/");
    mygrid.setHeader("ID,Start Period,End Period,Price (USD)");
    mygrid.setInitWidths("50,120,120,80");
    mygrid.setColAlign("center,center,center,center");
    mygrid.setColTypes("dyn,dhxCalendarA,dhxCalendarA,edn");
    mygrid.setDateFormat("%d/%m/%Y");
    mygrid.setColSorting("int,date,date,int");

    mygrid.init(); //...hits exception at this point
    //...
}

js文件:

//dhtmlxgrid.js...
this.hdr = document.createElement("TABLE");
this.hdr.style.border="1px solid gray";
this.hdr.cellSpacing = 0;
this.hdr.cellPadding = 0;
if ((!_isOpera)||(_OperaRv>=8.5))
this.hdr.style.tableLayout = "fixed";
this.hdr.className = "c_hdr".substr(2);
this.hdr.width = "100%";
//...
var hdrRow = this.hdr.insertRow(_isKHTML?2:1); //dhtmlxgrid.js:60 Uncaught Error: INDEX_SIZE_ERR: DOM Exception 1
//...
4

1 回答 1

1

该错误表示索引为负数或太大。发生错误的行是在表中添加一行,但是有一个 _isKHTML 测试...我假设这是对 konqueror 的测试,它是 Chrome 所基于的 WebKit 的祖先。无论如何,尝试取出该测试并改为执行此操作:

  var hdrRow = this.hdr.insertRow(1);

如果这解决了问题,那么那里使用的浏览器嗅探有问题,但如果您不必支持运行 KDE 的 Linux,那么没有它应该没问题。

于 2010-12-19T02:39:31.613 回答