Странное поведение jQuery.replaceWith и jQuery.html при выполнении с помощью селектора body. Вы теряете тег body после звонка:
$('body').replaceWith('<body>New body</body>');
Это не происходит с любым другим селектором, как:
$('title').replaceWith('<title>New title</title>');
Также jQuery.html не удваивает тег body (как это происходит с другими тегами) и работает как replaceWith при вызове так:
$('body').html('<body>New body</body>');
Надеюсь, это не серая зона jQuery. Или, если это так, они не думают это исправить. У меня есть приложения, где я использую $ ('body'). Html, когда следует использовать $ ('body'). ReplaceWith.