JavaScript: динамическая загрузка скриптов без манипуляций с DOM? - PullRequest
0 голосов
/ 23 февраля 2012

Как мне добавить внешний JavaScript (- библиотеку) на страницу через JavaScript-код без:

  • Управление DOM
  • Предпочтительно без использования Eval?

Это означает, что добавление тега script через JavaScript недопустимо.

JSLint говорит мне "Eval is Evil", поэтому Я смотрю, есть ли опция . Тот, который пройдет JSLint.

Пожалуйста, избегайте ответов, используя фреймворки , но было бы интересно узнать, как jQuery, ExtJS, Require.js и тому подобное решают динамическую загрузку скрипта.

Ответы [ 2 ]

1 голос
/ 23 февраля 2012

Я серьезно не вижу причин, стоящих за вашим намерением.Ваш вопрос о «динамической загрузке скрипта», по этой причине нет речи «eval is evil».

Вы явно собираетесь загрузить и выполнить код ECMAscript, который является очень правильным аргументом для использования eval.Так как это ваша заявленная цель (выполнение кода javascript), в чем конкретно ваша проблема при использовании eval?Независимо от того, как вы выполняете этот код, он всегда может быть опасным или вредоносным.Нет доступного метода ".evalButBeCareful()" (пока).

Поэтому я думаю, что вы хотите загрузить какой-то фрагмент кода, не сообщая об этом пользователю.К счастью, это невозможно.Может быть возможно скрыть код от новичка, но если кто-то захочет, он всегда может легко увидеть, что загружено на текущий сайт.

1 голос
/ 23 февраля 2012

За исключением того, что вы используете что-то вроде new Function(String); (что фактически означает eval по доверенности и, следовательно, не является вариантом ни при каких обстоятельствах, когда eval исключается из-за зла), вы не можете.

...