Opened 8 years ago

Closed 6 years ago

#7396 closed feature (invalid)

Selectable _create() slow on IE6 with large number of selectees

Reported by: lachlank Owned by: lachlank
Priority: minor Milestone: 2.0.0
Component: ui.selectable Version: 1.8.13
Keywords: Cc:
Blocked by: Blocking:

Description

Due to the slowness of offset() under IE6 (and probably 7 & 8), calling selectable() with a large number of selectees can take several seconds. If the autoRefresh option is specified as true, the initial call to refresh() in _create() is probably unnecessary?

More specifically, line 38:

var pos = $this.offset();

could be rewritten as:

var pos = first && autoRefresh ? {left: 0, top: 0} : $this.offset();
first = false;

where first and autoRefresh are defined in the body of _create:

var first = true;
var autoRefresh = this.options.autoRefresh();

This is probably overly simplistic, but works in my situation.

I am working in a corporate environment running IE6 so unfortunately these performance issues that are probably not noticeable on modern browsers can be a major headache.

Change History (5)

comment:2 Changed 7 years ago by Scott González

Type: enhancementfeature

comment:3 Changed 6 years ago by Scott González

Milestone: 1.9.02.0.0

comment:4 Changed 6 years ago by petersendidit

Owner: set to lachlank
Status: newpending

Thanks for taking the time to contribute to the jQuery UI project! Please provide a complete reduced test case on jsFiddle to help us assess your ticket. We are dropping support for IE6 in jQuery UI 1.10, but if you can create an example of it being slow in IE7/8 that would help.

Additionally, be sure to test against the git version of both jQuery UI and jQuery to ensure the issue still exists. To get you started, use this boilerplate: http://jsfiddle.net/ZgAqH/Open the link and click to "Fork" (in the top menu) to get started.

comment:5 Changed 6 years ago by trac-o-bot

Resolution: invalid
Status: pendingclosed

Because we get so many tickets, we often need to return them to the initial reporter for more information. If that person does not reply within 14 days, the ticket will automatically be closed, and that has happened in this case. If you still are interested in pursuing this issue, feel free to add a comment with the requested information and we will be happy to reopen the ticket if it is still valid. Thanks!

Note: See TracTickets for help on using tickets.