2015-07-21 2 views
1

Я хочу вставить элемент абзаца <p> в конце <body>, перед </body>.Вставить html befor</body> tag jquery

Я пробовал insertBefore() как следует, но он не работает должным образом.

$("<p>Test</p>").insertBefore("</body>"); 
+0

Пожалуйста, ответьте на эту проблему, если проблема возникнет, если не добавить комментарии или обновить вопрос – Tushar

ответ

5

Это означает, что вы хотите append содержание в <body>. append() добавит содержимое в конец элемента селектора.

Вставьте содержимое, заданное параметром, в конец каждого элемента в наборе согласованных элементов.

$(document.body).append("<p>Test</p>");
p { 
 
    color: green; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.10.0/jquery.min.js"></script> 
 

 
<body> 
 
    <div>1</div> 
 
    <div>2</div> 
 
    <div>3</div> 
 
    <div>4</div> 
 
</body>

+4

Downvoter, не могли бы вы объяснить, почему? Можно что-то улучшить? – Tushar

1

Вы можете использовать либо

$("body").append("<p>Test</p>")

или

$("<p>Test</p>").appendTo("body")

Они оба делают то же самое, но второе является более полезным, если и хочет, чтобы сохранить созданный элемент:

var $test = $("<p>Test</p>").appendTo("body"); 
// Do something else here 
$test.css("background", "red"); 

См here для получения дополнительной информации.

3

Просто используйте:

.append(); 

С API JQuery для .append():

«Описание: Содержание Вставка, заданное параметром, до конца каждого элемента в наборе соответствующих элементы «. (http://api.jquery.com/append/)

Так

$('body').append("<p>Test</p>"); 

вставит HTML в конце тела, который перед закрывающим тегом </тела>.