Из Wiki page : «Что нового в TypeScript [1.6]»:
Новое расширение файла
.tsx
иas
В TypeScript 1.6 вводится новое расширение файла
.tsx
. Это расширение делает две вещи: он позволяет JSX внутри файлов TypeScript и делает новый операторas
способом по умолчанию (удаление любой неопределенности между выражениями JSX и оператором листинга префикса TypeScript). Например:blockquote>var x =
foo; // is equivalent to: var x = foo as any;
Интересная идея :)
я записал следующий bookmarklet:
function reload(){var scripts=document.getElementsByTagName("script");var head=document.getElementsByTagName("head")[0];var newScripts=[];var removeScripts=[];for(var i=0;i<scripts.length;i++){var parent=scripts[i].parentNode;if(parent==head&&scripts[i].src){var newScript={};newScript.src=scripts[i].src;newScript.innerHTML=scripts[i].innerHTML;newScripts.push(newScript);removeScripts.push(scripts[i]);}}for(var i=0;i<removeScripts.length;i++){head.removeChild(removeScripts[i]);}for(var i=0;i<newScripts.length;i++){var script=document.createElement("script");script.src=newScripts[i].src;script.type="text/javascript";script.innerHTML=newScripts[i].innerHTML;head.appendChild(script);}}
добавляют, что к местоположению новой закладки, и это перезагрузит весь javascripts, на который ссылаются в < head>. не уверенный, как хорошо это будет работать на практике, но это стоило того, чтобы попытаться :) Я предполагаю, что необходимо было бы быть очень осторожными в способе, которым Вы пишете свои сценарии, чтобы не добавить вещи к телу страницы многократно, и т.д. Возможно, поддерживать для 'перезагрузки =, "истинный"' атрибут мог быть полезным, тот способ, которым Вы могли отметить только свои библиотеки как перезагружаемые.
Полный источник:
function reload() {
var scripts = document.getElementsByTagName("script");
var head = document.getElementsByTagName("head")[0];
var newScripts = [];
var removeScripts = [];
for(var i=0; i < scripts.length; i++) {
var parent = scripts[i].parentNode;
if(parent == head && scripts[i].src) {
var newScript = {};
newScript.src = scripts[i].src;
newScript.innerHTML = scripts[i].innerHTML;
newScripts.push(newScript);
removeScripts.push(scripts[i]);
}
}
for(var i=0; i < removeScripts.length; i++) {
head.removeChild(removeScripts[i]);
}
for(var i=0; i < newScripts.length; i++) {
var script = document.createElement("script");
script.src = newScripts[i].src;
script.type = "text/javascript";
script.innerHTML = newScripts[i].innerHTML;
head.appendChild(script);
}
}
im, уверенный не, слишком много людей здесь знают то, что Вы подразумеваете под заменой в горячем режиме, но поскольку virtuosiMedia сказал, что mootools признает, что, если Вы не доверяете mootools так очень затем, существует тот же плагин для jQuery и все еще если Вы не хотите платформы, Вы могли бы всегда добавлять те сценарии через dom
, но я уверен, что Нельзя изменить главные сценарии уровня, которые Вы уже определили, поскольку любые сценарии, динамично добавленные через DOM, являются только уровнем
телаЯ не знаком с HotSport, но если Вы говорите о динамичной загрузке JavaScript, да, можно сделать это. MooTools позволяет Вам делать это, также, как и jQuery, Прототип , Dojo, и YUI, и я уверен, что большинство других платформ делает также. Можно также сделать это с собственный JavaScript.
Если Вы хотите сделать это с цельный файлы JavaScript, см. этот вопрос для чего-то достаточно подобного, что необходимо смочь получить основы идеи.