JQuery с помощью добавления с эффектами

Зависит. Я не хотел бы должным быть поддерживать 150 строк if-then-else операторов, составляющих функцию, особенно если дерево решений является плотным. 20 строк сложной математики могут или не могут быть лучше. Это может занять время для понимания, но более длительное решение могло бы взять еще дольше для проверки.

Идеально, Вы нашли бы способ сделать это в меньше, и более простые строки, но не все функции прокладывают себе путь.

при использовании этих 20 строк использование некоторые из этих 130 строк экономили на комментариях для объяснения, какой алгоритм Вы используете. Если Вы не можете объяснить его хорошо, пойдите с решением с 150 строками.

139
задан Matt Ball 17 September 2010 в 01:05
поделиться

4 ответа

Эффекты добавления не будут работать, потому что содержимое, отображаемое в браузере, обновляется, как только добавляется div. Итак, чтобы объединить ответы Марка Б и Стирпайка:

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

<div id="new_div" style="display: none;"> ... </div>

Затем вы можете связать эффекты с вашим добавлением ( демонстрация ):

$('#new_div').appendTo('#original_div').show('slow');

Или ( демонстрация ):

var $new = $('#new_div');
$('#original_div').append($new);
$new.show('slow');
185
ответ дан 23 November 2019 в 23:19
поделиться

Что-то вроде:

$('#test').append('<div id="newdiv">Hello</div>').hide().show('slow');

должен это делать?

Редактировать: извините, ошибка в коде и предложение Мэтта тоже учтено.

14
ответ дан 23 November 2019 в 23:19
поделиться

Установить добавленный div, который будет изначально скрыт через css visibility: hidden .

4
ответ дан 23 November 2019 в 23:19
поделиться

Суть такова:

  1. Вы вызываете 'append' в родительском
  2. , но хотите вызвать 'show' для нового дочернего элемента

Это работает для меня :

var new_item = $('<p>hello</p>').hide();
parent.append(new_item);
new_item.show('normal');

или:

$('<p>hello</p>').hide().appendTo(parent).show('normal');
122
ответ дан 23 November 2019 в 23:19
поделиться
Другие вопросы по тегам:

Похожие вопросы: