я могу изменить скрипт src и запустить новый код в javascript? - PullRequest
2 голосов
/ 29 марта 2011

У меня есть страница, которая на самом деле представляет собой презентацию, очень похожую на powerpoint.Это бесконечный цикл, который обновляется с помощью ajax для загрузки нового содержимого презентации с прошлого раза.

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

<script id='transition' type='text/javascript' src='transitions/script/slide_off_to_right_fade.js'></script> 

Однако, хотя я заменяю весь этот тег, например,

<script id='transition' type='text/javascript' src='transitions/script/fade_in_out.js'></script> 

, он по-прежнему делает то же самое, что и при первоначальной загрузке документа.

Есть ли специальная функция / метод для вызова этого?Большое спасибо.

Ps.Та же проблема с массивом, который отслеживает количество слайдов и время пребывания на каждом слайде - я обновляю время в функции и запускаю функцию, но это как если бы я никогда ничего не менял ... подробнее об этомв другом посте ...

Ответы [ 2 ]

4 голосов
/ 29 марта 2011

Вы можете динамически создать элемент сценария и вставить его в DOM. Если вы не используете jQuery, вы можете сделать это в чистом Javascript следующим образом:

  var ref    = document.getElementsByTagName('script')[0],
      script = document.createElement('script');
  script.setAttribute('type', 'text/javascript');
  script.setAttribute('src',  'transitions/script/fade_in_out.js');
  script.setAttribute('id',   'newTransition');
  ref.parentNode.insertBefore(script, ref);
2 голосов
/ 29 марта 2011

Создание нового элемента <script> и добавление его в дерево DOM должно работать. Если вы используете библиотеку JavaScript, такую ​​как jQuery, вы можете использовать удобную функцию getScript () .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...