2016-07-25 16 views
0

Ich habe mehrere Komponenten/divs, die auf der X-Achse überlaufen. Ich rufe element.scrollIntoView() für 1-Element in jedem dieser Scrolling Komponenten componentDidUpdate():Blättern Sie zu mehreren Elementen in ihren eigenen übergelaufenen divs

componentDidUpdate(prevProps, prevState) { 
    console.log(prevProps) 
    console.log(prevState) 
    let activeAsst = getActiveCall(prevProps.detail) 
    if (activeAsst == null) { 
    return 
    } 
    let element = document.getElementById(`airCrew_${activeAsst.rep.id}`) 
    if (element.scrollIntoView) { 
    console.log("scrolling") 
    element.scrollIntoView() 
    } 
} 

Dies ist für die erste dieser rollbaren Komponenten arbeiten. Der Rest scrollt nicht. Ich kann die console.log("scrolling") für jede der scrollbaren Komponenten sehen.

Irgendeine Idee warum? Ich bin nur auf Chrome ausgerichtet, also mach dir keine Sorgen über andere Browser.

bearbeiten: auch versucht element.scrollIntoViewIfNecessary() ohne Erfolg.

Antwort

0

Bah, mein Fehler. Ich habe die IDs der Elemente falsch generiert und sie hatten die gleiche ID. Dort wurde für dasselbe Element jedes Mal gescrollt. Das wäre nervig zu debuggen, wenn ich Live-Daten hätte, Puh.

Verwandte Themen