Как добавить JavaScript после тега?

Здравствуйте!
Вставить текст слогана в html документ можно следующим образом:
<h6>Заголовок H6</h6>
<script>
$("h6").after("<p>Слоган</p>");
</script>

А как быть если надо добавить JavaScript код чтоб он выполнялся?
Я попытался добавить предыдущим способом но ничего не работает. Пытался закрыть двойные кавычки обратным слешем но безуспешно.
пример кода (который хотел добавить):
<script type="text/javascript">
test_1 = 1
test_2= 5
</script>
<script type="text/javascript" src="http://site.com/fire.js"></script>
  • Вопрос задан
  • 89 просмотров
Решения вопроса 1
bingo347
@bingo347 Куратор тега JavaScript
Crazy on performance...
Я так понимаю, у Вас js-код в виде строки в другом js-коде получается, тут есть несколько вариантов:

вариант 1, самый простой, создать из строки функцию и выполнить ее:
const CODE = 'console.log("good");'; // ваш код

(new Function(CODE))(); // создаем из него функцию и сразу вызываем

вариант 2, подходит только для этапа загрузки страницы, работает только до события DOMContentLoaded у document, просто пишем в поток html кода тег script с нужным кодом. Подойдет так же для выполнения кода в iframe
const CODE = 'console.log("good");'; // ваш код

document.write('<script>' + CODE + '</' + 'script>');


вариант 3, тоже с генерацией тега script, но уже работает в любое время, подставляем код как url в src тега script
const CODE = 'console.log("good");'; // ваш код

const scriptTag = document.createElement('script');
scriptTag.type = 'application/javascript';
scriptTag.src = URL.createObjectURL(new Blob([CODE]));
document.head.appendChild(scriptTag);
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы