docs: function(optsArg) {
  				if (! options.listView.fixedHeader) {
  					return;
  				}
  				var setPos = function() {
  					var val, pos;
  					pos = (fm.direction === 'ltr')? 'left' : 'right';
  					val = ((fm.direction === 'ltr')? wrapper.scrollLeft() : table.outerWidth(true) - wrapper.width() - wrapper.scrollLeft()) * -1;
  					if (base.css(pos) !== val) {
  						base.css(pos, val);
  					}
  				},
  				opts = optsArg || {},
  				cnt, base, table, htable, thead, tbody, hheight, htr, btr, htd, btd, htw, btw, init;
  				
  				tbody = cwd.find('tbody');
  				btr = tbody.children('tr:first');
  				if (btr.length && btr.is(':visible')) {
  					table = tbody.parent();
  					if (! tableHeader) {
  						init = true;
  						tbody.addClass('elfinder-cwd-fixheader');
  						thead = cwd.find('thead').attr('id', fm.namespace+'-cwd-thead');
  						htr = thead.children('tr:first');
  						hheight = htr.outerHeight(true);
  						cwd.css('margin-top', hheight - parseInt(table.css('padding-top')));
  						if (cssSticky) {
  							tableHeader = $('<div class="elfinder-table-header-sticky"/>').addClass(cwd.attr('class')).append($('<table/>').append(thead));
  							cwd.after(tableHeader);
  							wrapper.on('resize.fixheader', function(e) {
  								e.stopPropagation();
  								fixTableHeader({fitWidth: true});
  							});
  						} else {
  							base = $('<div/>').addClass(cwd.attr('class')).append($('<table/>').append(thead));
  							tableHeader = $('<div/>').addClass(wrapper.attr('class') + ' elfinder-cwd-fixheader')
  								.removeClass('ui-droppable native-droppable')
  								.css(wrapper.position())
  								.css({ height: hheight, width: cwd.outerWidth() })
  								.append(base);
  							if (fm.direction === 'rtl') {
  								tableHeader.css('left', (wrapper.data('width') - wrapper.width()) + 'px');
  							}
  							setPos();
  							wrapper.after(tableHeader)
  								.on('scroll.fixheader resize.fixheader', function(e) {
  									setPos();
  									if (e.type === 'resize') {
  										e.stopPropagation();
  										tableHeader.css(wrapper.position());
  										wrapper.data('width', wrapper.css('overflow', 'hidden').width());
  										wrapper.css('overflow', 'auto');
  										fixTableHeader();
  									}
  								});
  						}
  					} else {
  						thead = $('#'+fm.namespace+'-cwd-thead');
  						htr = thead.children('tr:first');
  					}
  					
  					if (init || opts.fitWidth || Math.abs(btr.outerWidth() - htr.outerWidth()) > 2) {
  						cnt = customCols.length + 1;
  						for (var i = 0; i < cnt; i++) {
  							htd = htr.children('td:eq('+i+')');
  							btd = btr.children('td:eq('+i+')');
  							htw = htd.width();
  							btw = btd.width();
  							if (typeof htd.data('delta') === 'undefined') {
  								htd.data('delta', (htd.outerWidth() - htw) - (btd.outerWidth() - btw));
  							}
  							btw -= htd.data('delta');
  							if (! init && ! opts.fitWidth && htw === btw) {
  								break;
  							}
  							htd.css('width', btw + 'px');
  						}
  					}
  					
  					if (!cssSticky) {
  						tableHeader.data('widthTimer') && cancelAnimationFrame(tableHeader.data('widthTimer'));
  						tableHeader.data('widthTimer', requestAnimationFrame(function() {
  							if (tableHeader) {
  								tableHeader.css('width', mBoard.width() + 'px');
  								if (fm.direction === 'rtl') {
  									tableHeader.css('left', (wrapper.data('width') - wrapper.width()) + 'px');
  								}
  							}
  						}));
  					}
  				}
  			}