blockly > WorkspaceSvg > scrollX
Właściwość WorkspaceSvg.scrollX
Aktualne przesunięcie przewijania w poziomie w jednostkach pikseli względem źródła obszaru roboczego.
Warto zastanowić się nad widokiem i obszarem roboczym pod nim. W miarę przesuwania się obszaru roboczego ta wartość staje się bardziej dodatnia, a widok „widoczna” jest teraz po lewej stronie obszaru roboczego. W miarę przesuwania się obszaru roboczego w lewo wartość staje się bardziej ujemna, a widok „widoczna” jest po prawej stronie obszaru roboczego.
Problem w tym, że ta wartość nie zawiera parametru absoluteLeft i nie może zawierać przesunięcia absoluteLeft. Dzieje się tak, ponieważ służy ona do obliczania wartości viewLeft.
Wartość viewLeft zależy od punktu początkowego obszaru roboczego (chociaż w jednostkach pikseli). Punkt początkowy obszaru roboczego to jego lewy górny róg (przynajmniej wtedy, gdy jest on włączony). Jest przesunięty z lewego górnego rogu do blocklyDiv, aby nie był poniżej zestawu narzędzi.
Gdy obszar roboczy jest włączony, punkty viewLeft i punkt początkowy obszaru roboczego znajdują się w tej samej lokalizacji X. Gdy obszar roboczy przesuwa się w prawo pod widokiem, ta wartość (scrollX) staje się bardziej dodatnia, a ViewLeft staje się bardziej ujemna w stosunku do początku obszaru roboczego (wyobraź sobie początek obszaru roboczego jako kropkę na obszarze roboczym przesuwania się w prawo, gdy obszar roboczy przesuwa się w prawo).
Jeśli więc element ScrollX zawiera wartość absoluteLeft, spowoduje to zmianę punktu początkowego obszaru roboczego. Oznacza to, że obiekt viewLeft będzie reprezentować lewą krawędź elementu blocklyDiv, a nie lewą krawędź obszaru roboczego.
Podpis:
scrollX: number;