блочно > WorkspaceSvg > прокруткаX

Свойство WorkspaceSvg.scrollX

Текущее смещение горизонтальной прокрутки в пикселях относительно начала координат рабочей области.

Полезно подумать о представлении и о холсте, перемещающемся под этим представлением. По мере перемещения холста вправо это значение становится более положительным, и вид теперь «видит» левую сторону холста. По мере перемещения холста влево это значение становится более отрицательным, и представление теперь «видит» правую сторону холста.

Самое запутанное в этом значении то, что оно не включает и не должно включать смещение AbsoluteLeft. Это связано с тем, что он используется для вычисления значения viewLeft.

ViewLeft относится к началу рабочего пространства (хотя и в пикселях). Началом рабочей области является верхний левый угол рабочей области (по крайней мере, когда она включена). Он сдвинут из верхнего левого угла блока BlocklyDiv, чтобы не оказаться под панелью инструментов.

Когда рабочая область включена, viewLeft и начало рабочей области находятся в одном и том же месте X. Когда холст скользит вправо под представлением, это значение (scrollX) становится более положительным, а viewLeft становится более отрицательным относительно начала координат рабочей области (представьте начало рабочей области как точку на холсте, скользящую вправо при перемещении холста). .

Таким образом, если бы ScrollX включал AbsoluteLeft, это в некотором смысле «отменило бы» начало координат рабочей области. Это означает, что viewLeft будет представлять левый край blocklyDiv, а не левый край рабочей области.

Подпись:

scrollX: number;