zer0bugz / dropdown-check-list

Automatically exported from code.google.com/p/dropdown-check-list
0 stars 0 forks source link

Height issue with IE8 lockup #148

Open GoogleCodeExporter opened 8 years ago

GoogleCodeExporter commented 8 years ago
** What steps will reproduce the problem?
1.  Create a dropdown with over 100 items in it.
2.  Use the dropdownchecklist on this dropdown in Internet Explorer 8.
3.  IE8 will appear to lockup when the dropdown is expanded.

** What is the expected output? What do you see instead?
Expected output would be the dropdown list and able to use it.  What happens is 
IE slows to almost a stop.

** What is your environment?
-- DropDownCheckList version:1.1
-- jQuery version:1.4.4
-- jQuery UI version:1.8.6
-- Browser and version:Internet Explorer 8

** Please provide any additional information below/Please attach sample
html
I was able to resolve this issue by altering the code that sets the height of 
the dropContainerDiv (in the _appendItems function, at line 387) to check that 
if the height is over, say 500 pixels, to set the height explicitly.

I also noticed an issue we were having on our site when a post back would occur 
and the div was in a collapsible div, (not sure the exact nature of how this 
was happening) the dropContainerDiv's would not get any width from their 
parent.  Some debugging of the code revealed this.  To fix it for us, I set the 
width and height of the from the width and height of the dropContainerDiv's 
parent, like this: i.e.  var divWidth = dropContainerDiv.parent().width();
This solved the issue for us and allowed us to continue with our development.

Original issue reported on code.google.com by zxl...@gmail.com on 5 Jan 2011 at 8:58

GoogleCodeExporter commented 8 years ago
Can you use the 'maxDropHeight' option to get the same effect?

Original comment by womohun...@ittrium.com on 7 Jan 2011 at 4:45

GoogleCodeExporter commented 8 years ago
I can confirm this issue, it happens in Firefox as well with the newest 
JQuery+JQuery UI.

Original comment by andreas....@gmail.com on 17 Jan 2011 at 4:00

GoogleCodeExporter commented 8 years ago
Sorry - I did not make myself clear.  If you use the 'maxDropHeight' option and 
set it to something like 500, is there still a problem?

Original comment by womohun...@ittrium.com on 17 Jan 2011 at 4:36

GoogleCodeExporter commented 8 years ago
Yes, there is.

Original comment by andreas....@gmail.com on 17 Jan 2011 at 4:55

GoogleCodeExporter commented 8 years ago
Ok this did not help.

I tried putting this code:

if(parseInt(divHeight)>500) divHeight="500"; // also tried divHeight=500;

no effect

What did fix it for me though:
maxDropHeight:250px
and then ensuring that the page has available space below the div.  This sounds 
trange but I added a:

<div style="height:500"> </div>

To the bottom of my page and the problem went away.  In my case, the drop down 
div is one of the last things on the page (above a submit button).  Doing this 
has resolved the issue.  Why?  Who knows.

Original comment by thetazz...@gmail.com on 4 Feb 2011 at 4:05

GoogleCodeExporter commented 8 years ago
Issue 150 has been merged into this issue.

Original comment by womohun...@ittrium.com on 7 Feb 2011 at 3:11

GoogleCodeExporter commented 8 years ago
The test page now includes a dropdown with 200 items in it, with no ill effect 
on IE8 (other than slow response time).  Without a better example and more 
details, I can take no action.

Original comment by womohun...@ittrium.com on 13 Apr 2011 at 5:39

GoogleCodeExporter commented 8 years ago
This is still an issue in ie8. To recreate it put a dropdown with at least 5 
items at the very bottom of the page, so that the window scroll bar is 
activated by the dropdown being expanded. When the dropdown expands and causes 
the window to increase/gain a scroll bar, ie locks up.

Original comment by aaronsmi...@googlemail.com on 6 Jun 2011 at 11:52

GoogleCodeExporter commented 8 years ago
Based on the info in comments 5 and 8, I am reclassifying this issue as 
something that DDCL itself cannot address.  It sounds like a problem 
specifically with IE8 where the opening of the DDCL control forces the page to 
flip from vertical non-scrolling to vertical scrolling.  This is something that 
the MS IE folks will have to address.
The OutOfScope status keeps the issue visible in the open issue list so that 
others with the same problem can see this discussion. 

Original comment by womohun...@ittrium.com on 13 Jun 2011 at 6:05

GoogleCodeExporter commented 8 years ago
Issue 179 has been merged into this issue.

Original comment by womohun...@ittrium.com on 13 Jun 2011 at 6:08

GoogleCodeExporter commented 8 years ago
Hm, but I could consistently reproduce this in Firefox 3. Has anyone tried this 
with Firefox 4? If so I'm not sure it should be unloaded on the IE team and 
forgotten about.

Original comment by andreas....@gmail.com on 13 Jun 2011 at 6:25

GoogleCodeExporter commented 8 years ago
Please attach a sample of html that reproduces this problem on Firefox.  

Original comment by womohun...@ittrium.com on 13 Jun 2011 at 6:31

GoogleCodeExporter commented 8 years ago
I believe this bug is related to (or caused by) the fact that the window.resize 
event is being triggered in IE (but not FF or Chrome) each time the DDCL is 
opened or a selection is made.  When I altered DDCL v1.3 at line 216 to not 
register a function for the window.resize event, all the problems with IE and 
long lists in the DDCL disappeared.

Original comment by tdres...@soe.ucsc.edu on 23 Jun 2011 at 11:37

GoogleCodeExporter commented 8 years ago
Nice Catch!!  I must admit I had never paid attention to the fact that a resize 
function even existed.  But I can see the possibility of a runaway recursion if 
a window resize event causes the window to resize.

Unless someone can identify a real need to keep the resize function in place, I 
will eliminate it on the next release.  My quick tests are showing me 
absolutely no value-add to keeping this function wired up.

Comments Anyone?    (Also, I still need a simple example to test with...)

Original comment by womohun...@ittrium.com on 24 Jun 2011 at 1:40

GoogleCodeExporter commented 8 years ago
There is a workaround for this issue on IE8 that I suspect people know already. 
 If you add

html { overflow-y: scroll; }

to your css then this puts the verticle scrollbar on the browser when the page 
is loaded.  Because the scrollbar is already there when the dropdown list is 
expanded IE8 doesn't lock up.

Original comment by pyronixm...@gmail.com on 22 Nov 2011 at 2:12