Как загрузить скрипт скриптом?

12
Samail
На сайте с 10.05.2007
Offline
369
831


$(document).ready(function(){
$('.222').click(function(){
$("#123").html('<script src="//***.com/js/mc?locale=ru_RU"></script>');

Если вставляю вместо скрипта просто текст, по клику содержимое div меняется на этот текст, а если скрипт, то на пустоту.

Оптимизайка
На сайте с 11.03.2012
Offline
396
#1

попробуйте '<scr' + 'ipt ...></scr' + 'ipt>'

http://jsfiddle.net/ddyafn26/

⭐ BotGuard (https://botguard.net) ⭐ — защита вашего сайта от вредоносных ботов, воровства контента, клонирования, спама и хакерских атак!
Samail
На сайте с 10.05.2007
Offline
369
#2

Не помогло

Станислав
На сайте с 27.12.2009
Offline
259
#3

$("#123").text('<script src="//***.com/js/mc?locale=ru_RU"></script>');
Мы там, где рады нас видеть.
Samail
На сайте с 10.05.2007
Offline
369
#4
Ms-Dred:
text

Так просто код скрипта на странице выводится текстом.

Оптимизайка
На сайте с 11.03.2012
Offline
396
#5

Тогда так, если внешний скрипт загружаете

http://jsfiddle.net/ddyafn26/2/

ДП
На сайте с 23.11.2009
Offline
203
#6

Не каждый скрипт можно подгрузить асинхронно (что вы пытаетесь сделать). Если в скрипте есть, например, document.write, то такой скрипт не выполнится.

А вообще своетую посмотреть как вставляются скрипты того же гугл-аналитикcа


var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
ga.src = ('https:' == document.location.protocol ? 'https://' : 'http://') + 'stats.g.doubleclick.net/dc.js';
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
Samail
На сайте с 10.05.2007
Offline
369
#7
Дикий пионер:
Если в скрипте есть, например, document.write, то такой скрипт не выполнится.

То есть без перезагрузки всей страницы я его вообще никак выполню?

ДП
На сайте с 23.11.2009
Offline
203
#8

Нет, он не выполнится, если его подключать иначе как через тег <script> внутри страницы.

lutskboy
На сайте с 22.11.2013
Offline
191
#9

$('.222').on('click', function(){

...........................................

ДП
На сайте с 23.11.2009
Offline
203
#10
Дикий пионер:
Нет, он не выполнится, если его подключать иначе как через тег <script> внутри страницы.

Вообще говоря, даже для такого случая есть хак с переопределением метода document.write, но вообще хотелось бы первоначальную постановку задачи узнать, а то есть вероятность, что мы тут столкнулись с xy problem

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий