рассчитать / получить скрытую ширину div в угловых - PullRequest
0 голосов
/ 26 мая 2018

В Angular у меня есть скрытый div, который должен быть виден на событии.
Событие вызывает соответствующий метод.пока все хорошо.
Но мне нужно вычислить положение div непосредственно перед его показом.Я использую следующий код, чтобы получить границу div и вычислить фактическую позицию, Но ширина div равна нулю, потому что она скрыта.

EventTriggerMethod(myDiv){
  console.log(myDiv.getBoundingClientRect().width);
  //OR
  console.log(window.getComputedStyle(myDiv).width);
  //Both return 0 when div is hidden.
}

Как можноя получаю фактическую ширину div, пока он невидим?

1 Ответ

0 голосов
/ 26 мая 2018

Элемент должен быть видимым и не иметь display:none, чтобы можно было рассчитать его размер.Два способа, которые я видел, чтобы обойти это:

1) Разместите компонент далеко от экрана и рассчитайте размер.2) Выключите display:none, рассчитайте размер, а затем снова включите display:none.

Пока вы выполняете # 2 в той же функции, она никогда не будет отображаться с момента перерисовки в браузере.не произойдет, пока вы не завершите свою функцию.И поскольку display:none снова включается в конце вашей функции, элемент никогда не будет отображаться.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...