Как я могу видеть невидимый элемент управления с jquery (скрыть и показать не работать)
Как изменить видимость элемента управления с помощью jQuery? У меня есть элемент управления, чтобы его видимое свойство было ложным... (не css)
Когда я использовал функцию show()
, потому что ничего не произошло, кажется, что методы hide()
и show()
для css-набора элемента управления, не отображаемого свойства...
Спасибо за ваши ответы,
С наилучшими пожеланиями
Ответы
Ответ 1
Вы не можете сделать это с помощью jQuery, visible="false"
в asp.net означает, что элемент управления не отображается на странице. Если вы хотите, чтобы элемент управления перешел к клиенту, вам нужно сделать style="display: none;"
так, чтобы он был на самом деле в HTML, иначе буквально ничего не показывать клиенту, поскольку элемент не был в HTML-адресе, отправленном вашим сервером.
Если вы удалите атрибут visible
и добавьте атрибут style
, вы можете использовать jQuery для его отображения, например:
$("#elementID").show();
Чтобы изменить visibility
, вам нужно использовать .css()
, например:
$("#elem").css('visibility', 'visible');
Если вам не требуется, чтобы элемент занимал пространство страниц, используйте display: none;
вместо visibility: hidden;
в вашем CSS, а затем просто выполните:
$("#elem").show();
.show()
и .hide()
функции работайте с display
вместо visibility
, как и большинство функций jQuery:)
Ответ 2
.show() и .hide() изменить правило отображения css. Я думаю, вы хотите:
$(selector).css('visibility', 'hidden'); // Hide element
$(selector).css('visibility', 'visible'); // Show element
Ответ 3
Вот какой код я использую для решения этой проблемы.
Сначала мы показываем элемент, который обычно устанавливает тип отображения "блокировать" через функцию .show(), а затем устанавливает правило CSS "видимым":
jQuery( '.element' ).show().css( 'visibility', 'visible' );
Или, предполагая, что класс, который скрывает элемент, называется скрытым, например, в Twitter Bootstrap, toggleClass() может быть полезным:
jQuery( '.element' ).toggleClass( 'hidden' );
Наконец, если вы хотите связать функции, возможно, с фантазией с эффектом затухания, вы можете сделать это так:
jQuery( '.element' ).css( 'visibility', 'visible' ).fadeIn( 5000 );