Переключить jQuery.remove () - PullRequest
       4

Переключить jQuery.remove ()

1 голос
/ 22 сентября 2010

Вместо .show () 'ing и .hide ()' ing (или .toggle () 'ing), есть ли способ «переключить» функцию .remove ()?

Я понимаю, что .remove () буквально удаляет элементы из DOM, поэтому сложно удалить магически удаленные элементы после их исчезновения, но есть ли способ их подделать?

Примечание: они должныбыть удаленными из DOM, чтобы они игнорировались программами чтения с экрана (программы чтения с экрана AFAIK не учитывают .show () и .hide ()).

Спасибо.

-- РЕДАКТИРОВАТЬ ---

ОК, поэтому .detach () может работать для меня.Если моя разметка:

<a href="#">Toggle images</a>

<p><span>Some text here</span><img src='image1.png'/><img src='image2.png'/></p>
<p><span>Some more text</span><img src='image2.png'/></p>
<p><span>Even more text</span><img src='image5.png'/><img src='image1.png'/>
  <img src='image5.png'/></p>

, и, нажав на якорь, он удалит все изображения, и повторный щелчок восстановит.Используя .detach (), как это будет работать?

--- EDIT # 2 ---

Как указали участники, программы чтения с экрана на самом деле делают уважение display: none;, что немного меняет мой вопрос.Я закончил с простым кодом переключения.Спасибо!

Ответы [ 2 ]

4 голосов
/ 22 сентября 2010

Вы можете попробовать использовать недавнее дополнение jQuery 1.4: detach, чтобы удалить их, а затем добавить их позже.

1 голос
/ 22 сентября 2010

Вы можете сохранить элемент (ы) DOM в переменную для последующего добавления обратно.

Проверьте пример здесь .

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