<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
	<title>jQuery Grid Plugin - jqGrid - Topic: Column reordering - header display problem</title>
	<link>http://www.trirand.com/blog/?page_id=393/bugs/column-reordering-header-display-problem</link>
	<description><![CDATA[Grid plugin]]></description>
	<generator>Simple:Press Version 5.7.5.3</generator>
	<atom:link href="http://www.trirand.com/blog/?page_id=393/bugs/column-reordering-header-display-problem/rss" rel="self" type="application/rss+xml" />
        <item>
        	<title>Klaus on Column reordering - header display problem</title>
        	<link>http://www.trirand.com/blog/?page_id=393/bugs/column-reordering-header-display-problem#p17070</link>
        	<category>Bugs</category>
        	<guid isPermaLink="true">http://www.trirand.com/blog/?page_id=393/bugs/column-reordering-header-display-problem#p17070</guid>
        	        	<description><![CDATA[<p>Thank you very much!</p>
<p>This solution fixed the problem in Firefox.</p>
]]></description>
        	        	<pubDate>Tue, 11 May 2010 15:12:44 +0300</pubDate>
        </item>
        <item>
        	<title>tony on Column reordering - header display problem</title>
        	<link>http://www.trirand.com/blog/?page_id=393/bugs/column-reordering-header-display-problem#p17059</link>
        	<category>Bugs</category>
        	<guid isPermaLink="true">http://www.trirand.com/blog/?page_id=393/bugs/column-reordering-header-display-problem#p17059</guid>
        	        	<description><![CDATA[<p>Hello Klaus,</p>
<p>Thank you very much for the link provided. It tell me more.</p>
<p>Short - I do not think that this is a jqGrid, but rather sortable one.</p>
<p>The script works fine in IE, Safari, Chrome.</p>
<p>The problem: When we do sorting the sorted element becomes a position absolute and the absolute positioned element which parent has a CSS property overflow-x:hidden causes FireFox to scroll to left position = 0;</p>
</p>
<p>The test case which demostates this is:</p>
<p>Edit the grid css and change the following</p>
<p><input type='button' class='sfcodeselect' name='sfselectit1816' value='Select Code' data-codeid='sfcode1816' /></p>
<div class='sfcode' id='sfcode1816'>
<p>.ui-jqgrid .ui-jqgrid-hdiv {position: relative; margin: 0em;padding: 0em; overflow-x: hidden; overflow-y: auto; border-left: 0px none !important; border-top : 0px none !important; border-right : 0px none !important;}</p>
</div>
<p>TO</p>
<p><input type='button' class='sfcodeselect' name='sfselectit3983' value='Select Code' data-codeid='sfcode3983' /></p>
<div class='sfcode' id='sfcode3983'>
<p>.ui-jqgrid .ui-jqgrid-hdiv {position: relative; margin: 0em;padding: 0em; overflow-x: auto; overflow-y: auto; border-left: 0px none !important; border-top : 0px none !important; border-right : 0px none !important;} </p>
</div>
<p>&#160;Clear the cashe and try. Of course grid will not look good, but this demostaates the problem.</p>
</p>
<p>In order to resolve the issue (I&#39;m not sure that I will change the method sorrtableColumns)</p>
<p>go back to the original css and add the following in grid.jqueryui.js:</p>
<p>From</p>
<p><input type='button' class='sfcodeselect' name='sfselectit141' value='Select Code' data-codeid='sfcode141' /></p>
<div class='sfcode' id='sfcode141'>
<p>&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160;&#160; "placeholder": {<br />&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;element: function(item) {<br />&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;var el = $(document.createElement(item[0].nodeName))<br />&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;.addClass(item[0].className+" ui-sortable-placeholder ui-state-highlight")<br />&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;.removeClass("ui-sortable-helper")[0];<br />&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;return el;<br />&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;},<br />&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;update: function(self, p) {<br />&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;p.height(self.currentItem.innerHeight() - parseInt(self.currentItem.css(&#39;paddingTop&#39;)&#124;&#124;0, 10) - parseInt(self.currentItem.css(&#39;paddingBottom&#39;)&#124;&#124;0, 10));<br />&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;p.width(self.currentItem.innerWidth() - parseInt(self.currentItem.css(&#39;paddingLeft&#39;)&#124;&#124;0, 10) - parseInt(self.currentItem.css(&#39;paddingRight&#39;)&#124;&#124;0, 10));<br />&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;}<br />&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;},</p>
</div>
<p>TO</p>
<p><input type='button' class='sfcodeselect' name='sfselectit9437' value='Select Code' data-codeid='sfcode9437' /></p>
<div class='sfcode' id='sfcode9437'>
<p>&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160;&#160; "placeholder": {<br />&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;element: function(item) {<br />&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;var el = $(document.createElement(item[0].nodeName))<br />&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;.addClass(item[0].className+" ui-sortable-placeholder ui-state-highlight")<br />&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;.removeClass("ui-sortable-helper")[0];<br />&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;return el;<br />&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;},<br />&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;update: function(self, p) {<br />&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;p.height(self.currentItem.innerHeight() - parseInt(self.currentItem.css(&#39;paddingTop&#39;)&#124;&#124;0, 10) - parseInt(self.currentItem.css(&#39;paddingBottom&#39;)&#124;&#124;0, 10));<br />&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;p.width(self.currentItem.innerWidth() - parseInt(self.currentItem.css(&#39;paddingLeft&#39;)&#124;&#124;0, 10) - parseInt(self.currentItem.css(&#39;paddingRight&#39;)&#124;&#124;0, 10));</p>
<p>ts.grid.hDiv.scrollLeft = ts.grid.bDiv.scrollLeft;<br />&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;}<br />&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;},</p>
</div>
<p>then add change event in to the sortable like this</p>
<p>From</p>
<p><input type='button' class='sfcodeselect' name='sfselectit1076' value='Select Code' data-codeid='sfcode1076' /></p>
<div class='sfcode' id='sfcode1076'>
<p>&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160;&#160; if (ts.p.sortable.options) {<br />&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;$.extend(sortable_opts, ts.p.sortable.options);<br />&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;} else if ($.isFunction(ts.p.sortable)) {<br />&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;ts.p.sortable = { "update" : ts.p.sortable };<br />&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;}</p>
</div>
<p>To</p>
<p><input type='button' class='sfcodeselect' name='sfselectit6210' value='Select Code' data-codeid='sfcode6210' /></p>
<div class='sfcode' id='sfcode6210'>
<p>if($.browser.mozilla)</p>
<p>{</p>
<p>ts.p.sortable.options = $.extend(ts.p.sortable.options &#124;&#124; {}, {&#160;</p>
<p>change : function(e,ui) {</p>
<p>ts.grid.hDiv.scrollLeft = ts.grid.bDiv.scrollLeft;</p>
<p>}</p>
<p>}</p>
<p>}</p>
<p>&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160;&#160; if (ts.p.sortable.options) {<br />&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;$.extend(sortable_opts, ts.p.sortable.options);<br />&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;} else if ($.isFunction(ts.p.sortable)) {<br />&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;ts.p.sortable = { "update" : ts.p.sortable };<br />&#160;&#160; &#160;&#160;&#160; &#160;&#160;&#160; &#160;}</p>
</div>
<p>Hope this helps.</p>
<p>Best Regards</p>
<p>Tony</p>
]]></description>
        	        	<pubDate>Tue, 11 May 2010 14:21:02 +0300</pubDate>
        </item>
        <item>
        	<title>Klaus on Column reordering - header display problem</title>
        	<link>http://www.trirand.com/blog/?page_id=393/bugs/column-reordering-header-display-problem#p17031</link>
        	<category>Bugs</category>
        	<guid isPermaLink="true">http://www.trirand.com/blog/?page_id=393/bugs/column-reordering-header-display-problem#p17031</guid>
        	        	<description><![CDATA[</p>
<p>Hello Tony!</p>
<p>I&#39;ve put up a demo page where I can easily  reproduce this bug:</p>
<p><a onclick="javascript:pageTracker._trackPageview(&#39;/outbound/article/http://jsbin.com/uxele3/3&#39;);" rel="nofollow" href="http://jsbin.com/uxele3/3" target="_blank">http://jsbin.com/uxele3/3</a></p>
<p>&#8230; scroll to "Column 10&#8243; and move it with the mouse 1 column left, than the name column (which is the first column) is displayed as first (which should not be, because it is out of visible range) and the "Column 10 as second aligned to the Name column and not to the content.</p>
<p>When you check this in the column chooser dialog, the moved column (Column 10) was really moved to 2nd place and not only 1 column left as desired.</p>
<p>I hope this demo page will help you find and fix that bug.</p>
<p>Kind regards,<br />Klaus.</p>
</p>
<p>p.s.: I tested with Firefox 3.6.3.<br />p.p.s: the used jqGrid version is that from your demo page (I&#39;ve directly linked the CSS and JS files from there)</p>
]]></description>
        	        	<pubDate>Mon, 10 May 2010 14:16:21 +0300</pubDate>
        </item>
        <item>
        	<title>tony on Column reordering - header display problem</title>
        	<link>http://www.trirand.com/blog/?page_id=393/bugs/column-reordering-header-display-problem#p16999</link>
        	<category>Bugs</category>
        	<guid isPermaLink="true">http://www.trirand.com/blog/?page_id=393/bugs/column-reordering-header-display-problem#p16999</guid>
        	        	<description><![CDATA[<p>Hello Klaus,</p>
<p>Thanks. The only way to correct this is to send me a link to the problem</p>
<p>There was such post before some time here, but I was unable to reproduce the bug.</p>
<p>Regards</p>
<p>Tony</p>
]]></description>
        	        	<pubDate>Fri, 07 May 2010 11:27:33 +0300</pubDate>
        </item>
        <item>
        	<title>Klaus on Column reordering - header display problem</title>
        	<link>http://www.trirand.com/blog/?page_id=393/bugs/column-reordering-header-display-problem#p16967</link>
        	<category>Bugs</category>
        	<guid isPermaLink="true">http://www.trirand.com/blog/?page_id=393/bugs/column-reordering-header-display-problem#p16967</guid>
        	        	<description><![CDATA[<p>1) When I scroll in a grid horizontally the table headers are moved slower than the content. When I stop scrolling they are aligned correct. (maybe to be improved - slower timeout)</p>
<p>2) When I reorder columns via drag&#38;drop in a bigger grid already scrolled to the right (horiz.), the column headers are wrong aligned until I to the left edge and back again.</p>
<p>I&#39;m using jqGrid 3.6.5</p>
<p>Kind regards,<br />Klaus.</p>
]]></description>
        	        	<pubDate>Thu, 06 May 2010 16:25:30 +0300</pubDate>
        </item>
</channel>
</rss>