2010-11-07 3 views

ответ

8

Это возвращает вновь созданный <div class="my_Class"></div> элемент, это
$(html, props) overload of $(). Для этого требуется элемент HTML и объект свойств.

Что-то отметить, однако, class это ключевое слово в IE и вызовет проблемы, вы должны поместить его в кавычки:

return $('<div>', { 'class': "my_Class" }); 

Более полный пример может быть что-то вроде:

return $('<div>', { 'class': "my_Class", click: function() { alert('hi'); } }); 

Из документов:

Начиная с jQuery 1.4, мы можем передать карту свойств ко второму аргументу. Этот аргумент принимает надмножество свойств, которое может быть передано методу .attr(). Кроме того, любая event type может быть передан в, и следующие методы JQuery можно назвать: val, css, html, text, data, width, height или offset. Обратите внимание, что Internet Explorer не позволит вам создать элемент ввода и изменить его тип; вы должны указать тип, например, <input type="checkbox" />.

+0

Другой вопрос: эквивалентен ли он: var element = document.createElement ('div'); \t \t element.setAttribute ("class", "my_class"); \t \t элемент возврата; ? –

+1

@UmairP - * почти *, да, кроме версии в вопросе возвращает объект jQuery, обертывающий этот фрагмент документа, версия в вашем комментарии вернет элемент DOM напрямую. –

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