브라우저에서 실행 중에 외부의 코드를 불러와서 실행하는 방법에는 script 태그를 runtime에서 생성하는 방법이 있다. 이 방법은 XMLHTTPRequest를 이용한 XSS 문제를 피하기 위한 방법으로 dynamic script의 발전한 형태로 볼 수 있다. 샘플 코드는 아래와 같다.
// adapted from http://www.hunlock.com/blogs/Howto_Dynamically_Insert_Javascript_And_CSS
var headID = document.getElementsByTagName("head")[0];
var newScript = document.createElement('script');
newScript.type = 'text/javascript'; newScript.onload=scriptLoaded; newScript.src = 'http://api.flickr.com/services/feeds/photos_public.gne?tags=sunset&format=json';
headID.appendChild(newScript);
jsonFlickrFeed = function(feed) {
// deal with the feed!
};
// when the script is finished, remove the script node we added
// removeNode is a custom function defined in the TiddlyWiki source code: http://svn.tiddlywiki.org/Trunk/core/js/Dom.js
// It ensures that the eventhandler is removed before deletion scriptLoaded = function() {
removeNode(newScript);
};