2014-04-03 14 views
5

Spesso durante la codifica e il debug, è possibile che si desideri commentare un tag <script>. Un esempio potrebbe essere quando si fa il seguente:Commento temporaneo <script> tag per il debug

<script src="lib/jquery.js"></script> 
<!--script src="lib/jquery.min.js"></script--> 

tendo di aggiungere la nuova linea invece di modificare l'originale di agire come un promemoria che voglio mettere che indietro prima di andare in diretta. Ho ottenuto questa sintassi da un collega ma non l'avevo mai visto prima. Esiste un metodo sintatticamente corretto per commentare i tag <script> in HTML?

EDIT: So che ci sono molte discussioni su come commentare gli script per nasconderli dai browser più vecchi, ma non è quello che sto facendo. Sto volendo nascondere completamente il tag.

+1

Stai usando una tecnologia lato server o solo lato client? – CodingIntrigue

+0

Tonnellate di alternative - così tanto che penso che sia basato sull'opinione pubblica. La mia opinione è che (avendo un sistema di controllo della versione) dovresti semplicemente cancellare la linea e, se lo vuoi, è nella cronologia delle versioni. – kojiro

+0

@RGraham lato client – zkent

risposta

3

Un'opzione sarebbe quella di caricare dinamicamente i propri script, dato un flag di debug. Per esempio:

Markup:

<script src="lib/include.js"></script> 

include.js

var IS_DEBUG = true; 

if(IS_DEBUG) { 
    loadScript("jquery.js"); 
    loadScript("anotherscript.js"); 
} 
else { 
    loadScript("jquery.min.js"); 
    loadScript("anotherscript.min.js"); 
} 

function loadScript(name) { 
    var elem = document.createElement("script"); 
    elem.src = name; 
    document.getElementsByTagName("head")[0].appendChild(elem); 
} 

Questo significa che è possibile solo attivare o disattivare la bandiera IS_DEBUG per caricare gli script necessari. Questo è un esempio molto rudimentale, ma hai un'idea. Potrebbe anche essere in grado di legare questo con qualcosa come require.js

+0

Userei certamente questo metodo se dipendesse da me, ma il ragazzo per cui lavoro è uno stickler per l'utilizzo della quantità minima di codice per un'attività. Sono certo che si fermerebbe a questo sebbene require.js potrebbe essere una buona alternativa. Grazie. – zkent

+0

Sono andato avanti e ho accettato questa risposta perché il mio capo schizzinoso a parte, questa è una buona soluzione e una che ho usato prima. – zkent

Problemi correlati