Создание тегов сценария путем установки .innerHTML обычно не приводит к выполнению этих сценариев. Существуют исключения, например, наличие атрибута «defer» в теге script в браузерах IE, но, как правило, это не тот путь. (Я не уверен, что будет делать атрибут «async». Я мог видеть async = «true», в результате чего скрипты, созданные таким образом, работали, но я не проверял это.)
Что бы полностью работало, хотя бы создать createElement («скрипт»), затем установить на нем .src и вставить его где-нибудь в DOM. Он не только загружает и запускает его, но во многих случаях он делает это асинхронно (по сравнению с обычными тегами сценариев, блокирующими остальную часть загрузки страницы), что обычно лучше.