Javascript My Sorting.js在firefox中运行良好,但在IE8中不起作用 函数ts_getInnerText(el){ if(typeof el==“string”)返回el; if(typeof el==“undefined”){return el}; if(el.innerText)返回el.innerText;//不需要,但速度更快 var str=“”; var cs=el.childNodes; var l=cs.长度; 对于(变量i=0;i

Javascript My Sorting.js在firefox中运行良好,但在IE8中不起作用 函数ts_getInnerText(el){ if(typeof el==“string”)返回el; if(typeof el==“undefined”){return el}; if(el.innerText)返回el.innerText;//不需要,但速度更快 var str=“”; var cs=el.childNodes; var l=cs.长度; 对于(变量i=0;i,javascript,jquery,jquery-ui,jquery-plugins,Javascript,Jquery,Jquery Ui,Jquery Plugins,} 现在,当我在IE中调用这个函数时,它总是得到未定义的值,这会在控制台上引发错误,所以我添加了一个未定义的检查 function ts_getInnerText(el) { if (typeof el == "string") return el; if (typeof el == "undefined") { return el }; if (el.innerText) return el.innerText; // Not needed but it is faster var str

}

现在,当我在IE中调用这个函数时,它总是得到未定义的值,这会在控制台上引发错误,所以我添加了一个未定义的检查

function ts_getInnerText(el) {
if (typeof el == "string") return el;
if (typeof el == "undefined") { return el };
if (el.innerText) return el.innerText;  // Not needed but it is faster
var str = "";

var cs = el.childNodes;
var l = cs.length;
for (var i = 0; i < l; i++) {
    switch (cs[i].nodeType) {
        case 1: // ELEMENT_NODE
            str += ts_getInnerText(cs[i]);
            break;
        case 3: // TEXT_NODE
            str += cs[i].nodeValue;
            break;
    }
}
return str;
函数不区分大小写(a,b){
if(a.cells.length==b.cells.length){
if(!(ts_getInnerText的类型(a.cells[SORT_COLUMN\u INDEX])=='undefined')){
aa=ts_getInnerText(a.cells[SORT_COLUMN_INDEX]).toLowerCase();
bb=ts_getInnerText(b.cells[SORT_COLUMN_INDEX])。toLowerCase();
如果(aa==bb){
返回0;
}
if(aa
}

之后,列在单击时开始排序,但排序不正确。。例如,我必须单击两次以按asc或desc顺序对其进行排序

function ts_sort_caseinsensitive(a, b) {
if (a.cells.length == b.cells.length) {
    if (!(typeof ts_getInnerText(a.cells[SORT_COLUMN_INDEX]) == 'undefined')) {
        aa = ts_getInnerText(a.cells[SORT_COLUMN_INDEX]).toLowerCase();
        bb = ts_getInnerText(b.cells[SORT_COLUMN_INDEX]).toLowerCase();
        if (aa == bb) {
            return 0;
        }
        if (aa < bb) {
            return -1;
        }
        return 1;

    }
}