jQuery: скрытые элементы - общий вопрос - PullRequest
0 голосов
/ 27 ноября 2009

когда элементы скрыты, вы не можете прочитать, например. их размеры, это общая проблема javascript или, возможно, есть обходной путь в jQuery?

у меня например. некоторые вкладки, которые содержат виджеты, их инициализация не работает должным образом, поскольку они скрыты.

ТНХ

Ответы [ 4 ]

2 голосов
/ 27 ноября 2009

Никакого обходного пути, о котором я знаю.

Однако вы можете использовать видимость: скрытый вместо отображения: ни один в вашем CSS. Элементы, которые скрыты с помощью видимости: скрытые сохраняют свою позицию и размер, но просто невидимы.

Надеюсь, это поможет.

0 голосов
/ 08 декабря 2009

В этом сообщении в блоге представлен способ получения размеров скрытого элемента с помощью display: none. Другие ответы здесь касаются одних и тех же идей, но оба не предлагают решения для возврата свойств CSS к их первоначальным значениям.

0 голосов
/ 27 ноября 2009

Если вы установили видимость: скрытый, элемент по-прежнему занимает место, поэтому установите также положение: абсолютное, чтобы вывести его из потока документов. При необходимости вы можете расположить элемент за пределами экрана, чтобы он не блокировал события и тому подобное.

$("#el").css({
    visibility: "hidden",
    position: "absolute",
    left: "-9999px"
});

Оттуда вы все еще можете прочитать ширину элемента. Например:

$("#el").width();

Надеюсь, это поможет!

0 голосов
/ 27 ноября 2009

Этот плагин измерения говорит, что может получить размеры скрытых элементов.

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