学习基于jQuery的FlexiGrid工具 (九)

2014-11-24 01:40:17 · 作者: · 浏览: 10
is).attr('abbr')) {

$('div', this).addClass('s' + p.sortorder);

} else if ($(this).attr('abbr') == p.sortname && !g.colCopy && !g.colresize && $(this).attr('abbr')) {

var no = (p.sortorder == 'asc') 'desc' : 'asc';

$('div', this).removeClass('s' + p.sortorder).addClass('s' + no);

}

if (g.colCopy) {

var n = $('th', g.hDiv).index(this);

if (n == g.dcoln) {

return false;

}

if (n < g.dcoln) {

$(this).append(g.cdropleft);

} else {

$(this).append(g.cdropright);

}

g.dcolt = n;

} else if (!g.colresize) {

var nv = $('th:visible', g.hDiv).index(this);

var onl = parseInt($('div:eq(' + nv + ')', g.cDrag).css('left'));

var nw = jQuery(g.nBtn).outerWidth();

var nl = onl - nw + Math.floor(p.cgwidth / 2);

$(g.nDiv).hide();

$(g.nBtn).hide();

$(g.nBtn).css({

'left': nl,

top: g.hDiv.offsetTop

}).show();

var ndw = parseInt($(g.nDiv).width());

$(g.nDiv).css({

top: g.bDiv.offsetTop

});

if ((nl + ndw) > $(g.gDiv).width()) {

$(g.nDiv).css('left', onl - ndw + 1);

} else {

$(g.nDiv).css('left', nl);

}

if ($(this).hasClass('sorted')) {

$(g.nBtn).addClass('srtd');

} else {

$(g.nBtn).removeClass('srtd');

}

}

}, function () {

$(this).removeClass('thOver');

if ($(this).attr('abbr') != p.sortname) {

$('div', this).removeClass('s' + p.sortorder);

} else if ($(this).attr('abbr') == p.sortname) {

var no = (p.sortorder == 'asc') 'desc' : 'asc';

$('div', this).addClass('s' + p.sortorder).removeClass('s' + no);

}

if (g.colCopy) {

$(g.cdropleft).remove();

$(g.cdropright).remove();

g.dcolt = null;

}

}); //wrap content

});

//set bDiv

g.bDiv.className = 'bDiv';

$(t).before(g.bDiv);

$(g.bDiv).css({

height: (p.height == 'auto') 'auto' : p.height + "px"

}).scroll(function (e) {

g.scroll()

}).append(t);

if (p.height == 'auto') {

$('table', g.bDiv).addClass('autoht');

}

//add td & row properties

g.addCellProp();

g.addRowProp();

//set cDrag

var cdcol = $('thead tr:first th:first', g.hDiv).get(0);

if (cdcol != null) {

g.cDrag.className = 'cDrag';

g.cdpad = 0;

g.cdpad += (isNaN(parseInt($('div', cdcol).css('borderLeftWidth'))) 0 : parseInt($('div', cdcol).css('borderLeftWidth')));

g.cdpad += (isNaN(parseInt($('div', cdcol).css('borderRightWidth'))) 0 : parseInt($('div', cdcol).css('borderRightWidth')));

g.cdpad += (isNaN(parseInt($('div', cdcol).css('paddingLeft'))) 0 : parseInt($('div', cdcol).css('paddingLeft')));

g.cdpad += (isNaN(parseInt($('div', cdcol).css('paddingRight'))) 0 : parseInt($('div', cdcol).css('paddingRight')));

g.cdpad += (isNaN(parseInt($(cdcol).css('borderLeftWidth'))) 0 : parseInt($(cdcol).css('borderLeftWidth')));

g.cdpad += (isNaN(parseInt($(cdcol).css('borderRightWidth'))) 0 : parseInt($(cdcol).css('borderRightWidth')));

g.cdpad += (isNaN(parseInt($(cdcol).css('paddingLeft'))) 0 : parseInt($(cdcol).css('paddingLeft')));

g.cdpad += (isNaN(parseInt($(cdcol).css('paddingRight'))) 0 : parseInt($(cdcol).css('paddingRight')));

$(g.bDiv).before(g.cDrag);

var cdheight = $(g.bDiv).height();

var hdheight = $(g.hDiv).height();

$(g.cDrag).