Замена тега script из js
На странице js код заключен в тег "script"
Возможно ли из js, заменить данный тег. Не выполняя поиск по документу и не присваивая никаких индетификаторов.
То есть заменить тег так, словно обращаемся из кода(в данном теге) к данному тегу как к родителю?
Ответы (1 шт):
Автор решения: OPTIMUS PRIME
→ Ссылка
document.currentScript указывает на тег <script>, внутри которого был выполнен.
<div>1</div>
<script>
console.log(document.currentScript.outerHTML);
document.currentScript.outerHTML = '<div>2</div>';
</script>
<div>3</div>
Если порядок скриптов на странице заранее известен, можно использовать селектор тега:
<script>1;</script>
<script>2;</script>
<script>
let script = document.querySelectorAll('script');
console.log( script[0] );
console.log( script[1] );
console.log( script[2] );
script[3].parentNode.removeChild( script[3] ); // Удален.
</script>
Примечание: От удаления тега скрипт не перестанет работать.