jQuery append / appendTo и IE6 - PullRequest
       0

jQuery append / appendTo и IE6

1 голос
/ 04 января 2011

Ну ... IE6 - плохой, плохой пидор - да, но да, это сегодня привело меня в бред.

var friendMail = $('.friend-email').html();
$('.friend-mails').children('.right, .left').append(friendMail);

Приведенный выше код работает в IE7,8 / FF / Safari / Chrome безупречно, но IE6 не работает Однако, когда я сделал из этого скрипку , она работала и в IE6. Какая-то странная ошибка, скрипка работает, мой сайт - нет.

Тогда есть интересная часть ...

$('.friend-email .mail').clone().appendTo('.friend-mails .left');

Этот код работает во всех вышеупомянутых браузерах + IE6. Но я немного растерялся ... В чем разница между этими двумя? (добавить против добавления, я думаю ...)

Заранее спасибо!

1 Ответ

3 голосов
/ 04 января 2011

Разница между append и appendTo зависит от порядка. Следующие две строки одинаковы:

$('.friend-email .mail').clone().appendTo('.friend-mails .left');
$('.friend-mails .left').append($('.friend-email .mail').clone());

Однако разница между вашими двумя примерами real заключается в том, что первый извлекает HTML как текст и создает новые элементы из этого текста, а вторая версия использует методы DOM для клонирования существующих элементов DOM. , что является более надежным (и, как правило, быстрее).

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