2016-05-17 3 views
2

JQuery html() метод принимает аргументы html string или функцию в соответствии с ее документацией. Но если я использовал массив объектов jQuery, он также работает с ним. Как это работает, нет документации вообще.Неожиданное поведение html()

Например:

$('div').html([$('<div/>', { 
 
    text: '1' 
 
}), $('<div/>', { 
 
    text: '2' 
 
})]);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> 
 
<div></div>

Приведенный выше код связывает две дивы.

Является ли массив объектов jQuery равным объекту jQuery?

ответ

2

.html() принимает объект JQuery в качестве параметра

Как это работает там нет документации на все

Это правильно. Это подробно не описано в документации jQuery. Вам нужно будет просмотреть источник jQuery, чтобы быть в курсе этого; без попытки передать jQuery или другой объект, например массив объектов jQuery до .html().

См. jquery-2.2.3.js at 5490 - 5527 для jQuery.fn.html функция; обратите внимание if состояние и использование .append() на 5523 - 5525

if (elem) { 
    this.empty().append(value); 
    } 
+0

ли массив объекта JQuery равен объекту JQuery? –

+0

Также нет документации об этом –

+0

@PranavCBalan В документации jQuery имеется несколько упущений; функции остались незаписанными; функции доступны – guest271314

Смежные вопросы