angular-ui / ui-scroll

Unlimited bidirectional scrolling over a limited element buffer for AngularJS applications

Home Page:http://angular-ui.github.io/ui-scroll/demo/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

IE performance issue

zsolttsz opened this issue · comments

I'm getting some weird behavior when scrolling on IE. Compared to Chrome, it renders more (unnecessary) DOM elements (plunker example: https://plnkr.co/edit/8CGpeXtXbioFPx76AHl0?p=preview). This becomes a real bottleneck when the grid has a lot of rows with some additional watchers (from ng-change, ng-class, etc.)

Looking at the top visible element, on IE there are ~200 rows before the first visible element when scrolled to EOF (in the plunker example the topVisiblie element is shifted a bit on chrome as well, but in the project I'm working on, it shows the correct elemet). The DOM Explorer confrms this.

Also it seems that after EOF is reached on IE, when scrolling back to the top, after a while the scroll becomes jumpy (something similar to this: #100). In prod, I'm having this same issue, with the difference that EOF doesn't need to be reached first; after ~70 rows it kicks in.

Any ideas/guidelines are welcome.

@zsolttsz This is not a performance issue, this is a true bug. Thanks for the report and repro. I've made a fix and forked your plunker: https://plnkr.co/edit/hU3yztEn39YwqxpkbghY (the ui-scroll distributive was overrided, this is the only change I did). So the fix is in 'master' branch and will be included in the next (v1.6.2) release.

Thanks for looking into the issue, and for the plunker. It helps a lot :)