2010-11-18 15 views
2

Dies ist nur in IE8 Bindung, Tritt ein, wenn ich eine mehrere Werte Auswahlbox zu observableArray mit selectedOptions gebunden haben, und es gibt mehr Elemente als wählen Sie zeigen können (Bildlauf aktiviert ist) . Also immer wenn ich Strg + Klick auf das Element in einem Auswahlfeld die Scrolling Position 'springt weg' und ich am Ende wird ein wenig gescrollt. Diese erzeugt eine nervige unangenehme Erfahrung. Wie ich es verstehe, ist dieses Problem wegen Zwei-Wege-Bindung von selectedOptions: wenn ich auf ein Element klicke, wird es zum Array, hinzugefügt, was wiederum die Auswahlbox nach refill nach observableArray benachrichtigt die Benutzeroberfläche seiner Änderungen. Gibt es etwas, was getan werden kann?KnockoutJS selectedOptions Ursachen Auswahlbox zu Jitter in IE8

UPDATE:

Ich landete mit dieser Bindung:

<select data-bind='visible:operator() ? operator().Element == "DropDown" : false, 
           options: property() ? property().ReferenceItems : null, 
           optionsText: "Name", 
           optionsValue: "Id", 
           optionsCaption: "Выберите...", 
           selectedOptions: selectedValues, 
           multiple: selectedValues().length > 1'> 
</select> 
+0

Haben Sie jemals eine Antwort darauf gefunden? Ich habe das gleiche Problem – Mel

+0

@Mel, endete ich Zwei-Wege-Bindung zu entfernen, und verwendete nur Einweg (von ui zu Viewmodel). Das hat mein Problem gelöst. – Valentin

+0

Entschuldigung, ich bin ziemlich neu. Aber wie genau hast du das gemacht? Ich versuchte mit einfachen js-Arrays und während es das Jitter-Problem zu entfernen, wird das Array nicht mit der Auswahl aktualisiert ... – Mel

Antwort

0

Ich weiß nicht ... alles, was ich empfehlen kann, ist zu versuchen, diese auf die Gruppe knockoutjs google fragen. Es scheint aktiv zu sein und Leute, die Experten sind, reagieren auf solche Dinge.

Verwandte Themen