Bug Tracker

Opened 8 years ago

Closed 8 years ago

Last modified 8 years ago

#8092 closed bug (invalid)

show() and hide() super slow in chrome,safari but normal in firefox

Reported by: support@… Owned by:
Priority: undecided Milestone: 1.next
Component: unfiled Version: 1.4.4
Keywords: Cc:
Blocked by: Blocking:

Description

I have a webpage with 8 unordered lists. Each list receives list items through ajax call. The total list items in all the unordered lists totals 316. I have a sidebar that when clicked, changes which unordered list is displayed. All others are hidden. The functionality works as expected in firefox, but is supper slow in safari and chrome. If the total list items per page is 75 or less, the page works find in safari or firefox.

I have a sample web page, try viewing in firefox and then in chrome or safari. Drag and drop the list items into the left hand sidebar. Problem shows up when you click a list item in the left hand sidebar.

http://logapedia.com/bidsortable-ajax.html

Change History (9)

comment:1 Changed 8 years ago by addyosmani

Thank you for submitting a ticket to the jQuery bug tracker. Unfortunately this tracker is only for reduced issues that can be replicated and easily reproduced. We are unable to go through all your project's code to discover whats making it go slow, however if you ask in the jQuery forums or on our freenode channel #jquery, you may be able to get some assistance in reducing this issue down to something shorter that we can evaluate as confirm as a core problem if it is so.

comment:2 Changed 8 years ago by addyosmani

Resolution: invalid
Status: newclosed

comment:3 Changed 8 years ago by support@…

I have reduced my problem to 20 lines of code. I have a test page up on jsFiddle, could you please take another look at the issue? Try it in firefox and then in chrome.

http://jsfiddle.net/oumichaelm/UZCZc/3/embedded/result/

comment:4 Changed 8 years ago by Rick Waldron

This "test case" is bogus.

  1. You're calling in jQuery 1.4.2 in your HTML, but also loading 1.4.4 from jsFiddle
  1. You've included a complete HTML document, which causes the rendered document to have an <html></html> inside of an <html></html>
  1. You've included your "test case" code in both the html panel and the script panel.
  1. jsFiddle is handling dom ready for you, but your code has a $(document).ready()

comment:5 Changed 8 years ago by Rick Waldron

Also, the claim that this works in Firefox cannot possibly be valid. Simply opening this jsfiddle in Firefox 4b10 crashed the browser.

comment:6 Changed 8 years ago by Rick Waldron

http://jsfiddle.net/rwaldron/MxqTp/12/

Somehow i'm inclined to believe that hide/show was never meant for this amount of elements.

comment:7 Changed 8 years ago by anonymous

Thanks for reviewing again. I'm sorry for my inexperience with jsFiddle. I'm sure you deal with newbie programmers all the time. I asked a question on stackoverflow and it seems to be more of a basic javascript issue, not jquery. A viewer forked my site and used basic javascript to alter the css and the same issue occurs.

The jsFiddle works find for me.

comment:8 Changed 8 years ago by Rick Waldron

I think your sheer number of elements is the issue. Is it possible to refactor your markup to be a little more svelte?

comment:9 Changed 8 years ago by support@…

Again its fast enough in firefox, just not chrome. Someone has already filed a bug report in chrome. Here is the link to stack overflow.

http://stackoverflow.com/questions/4840891/jquery-hide-and-show-runs-too-slow-in-google-chrome

Note: See TracTickets for help on using tickets.