Come è possibile eseguire il debug di JavaScript con IE 8?Come eseguire il debug di Javascript con IE 8
debbuging La JavaScript con Visual Studio non funziona dopo un aggiornamento di IE 8.
Come è possibile eseguire il debug di JavaScript con IE 8?Come eseguire il debug di Javascript con IE 8
debbuging La JavaScript con Visual Studio non funziona dopo un aggiornamento di IE 8.
ho scoperto oggi che ora possiamo eseguire il debug JavaScript con il plug-in della barra degli strumenti di sviluppo integrato in IE 8.
È possibile utilizzare orologio, punto di interruzione, vedere lo stack di chiamate ecc., Analogamente ai debugger nei browser professionali.
È anche possibile utilizzare la dichiarazione debugger;
nel codice JavaScript per impostare un punto di interruzione.
È possibile impostare i punti di interruzione senza il debugger; dichiarazione. IE8 è molto carino per il debug di JS, SOPRATTUTTO poiché è possibile renderizzare e analizzare come IE7, con strumenti IE8. –
L'istruzione 'debugger' non sembra funzionare per me. – slikts
@Reinis I. Hai messo un; dopo il tuo debugger; ?? –
È possibile ottenere ulteriori informazioni sul debug della barra degli strumenti di sviluppo di IE8 allo Debugging JScript o Debugging Script with the Developer Tools.
Questo non ti aiuterà a passare attraverso il codice o ad infrangere errori, ma è un modo utile per ottenere la stessa console di debug per il tuo progetto su tutti i browser.
myLog = function() {
if (!myLog._div) { myLog.createDiv(); }
var logEntry = document.createElement('span');
for (var i=0; i < arguments.length; i++) {
logEntry.innerHTML += myLog.toJson(arguments[i]) + '<br />';
}
logEntry.innerHTML += '<br />';
myLog._div.appendChild(logEntry);
}
myLog.createDiv = function() {
myLog._div = document.body.appendChild(document.createElement('div'));
var props = {
position:'absolute', top:'10px', right:'10px', background:'#333', border:'5px solid #333',
color: 'white', width: '400px', height: '300px', overflow: 'auto', fontFamily: 'courier new',
fontSize: '11px', whiteSpace: 'nowrap'
}
for (var key in props) { myLog._div.style[key] = props[key]; }
}
myLog.toJSON = function(obj) {
if (typeof window.uneval == 'function') { return uneval(obj); }
if (typeof obj == 'object') {
if (!obj) { return 'null'; }
var list = [];
if (obj instanceof Array) {
for (var i=0;i < obj.length;i++) { list.push(this.toJson(obj[i])); }
return '[' + list.join(',') + ']';
} else {
for (var prop in obj) { list.push('"' + prop + '":' + this.toJson(obj[prop])); }
return '{' + list.join(',') + '}';
}
} else if (typeof obj == 'string') {
return '"' + obj.replace(/(["'])/g, '\\$1') + '"';
} else {
return new String(obj);
}
}
myLog('log statement');
myLog('logging an object', { name: 'Marcus', likes: 'js' });
Questo è mettere insieme abbastanza in fretta ed è un po 'sciatta, ma è utile comunque e può essere migliorata facilmente!
Speravo di aggiungere questo come commento alla risposta di Marcus Westin, ma non riesco a trovare un collegamento - forse ho bisogno di più reputazione?
In ogni caso, grazie, ho trovato questo snippet di codice utile per il debug rapido in IE. Ho apportato alcune modifiche veloci per risolvere un problema che ha impedito di funzionare per me, anche per scorrere verso il basso automaticamente e utilizzare il posizionamento fisso in modo che appaia nella finestra. Ecco la mia versione nel caso qualcuno la trovi utile:
myLog = function() {
var _div = null;
this.toJson = function(obj) {
if (typeof window.uneval == 'function') { return uneval(obj); }
if (typeof obj == 'object') {
if (!obj) { return 'null'; }
var list = [];
if (obj instanceof Array) {
for (var i=0;i < obj.length;i++) { list.push(this.toJson(obj[i])); }
return '[' + list.join(',') + ']';
} else {
for (var prop in obj) { list.push('"' + prop + '":' + this.toJson(obj[prop])); }
return '{' + list.join(',') + '}';
}
} else if (typeof obj == 'string') {
return '"' + obj.replace(/(["'])/g, '\\$1') + '"';
} else {
return new String(obj);
}
};
this.createDiv = function() {
myLog._div = document.body.appendChild(document.createElement('div'));
var props = {
position:'fixed', top:'10px', right:'10px', background:'#333', border:'5px solid #333',
color: 'white', width: '400px', height: '300px', overflow: 'auto', fontFamily: 'courier new',
fontSize: '11px', whiteSpace: 'nowrap'
}
for (var key in props) { myLog._div.style[key] = props[key]; }
};
if (!myLog._div) { this.createDiv(); }
var logEntry = document.createElement('span');
for (var i=0; i < arguments.length; i++) {
logEntry.innerHTML += this.toJson(arguments[i]) + '<br />';
}
logEntry.innerHTML += '<br />';
myLog._div.appendChild(logEntry);
// Scroll automatically to the bottom
myLog._div.scrollTop = myLog._div.scrollHeight;
}
Non capisco.Come posso usare questo in IE8 per eseguire il debug di javascript, per favore? Esegui javascript per eseguire il debug di javascript? – Fandango68
@ Fernando68 È JavaScript aggiungere una console di debug che si può vedere sulla pagina, che visualizzerà le cose che si registrano con 'myLog ('voglio vedere questo', fooObject);'. Penso che non avresti davvero bisogno di IE8 perché finché hai gli strumenti di sviluppo aperti, puoi usare console.log, debug passo-passo, ecc. Ma se ti ritrovi a dover eseguire il debug di browser anche più vecchi, forse potrebbe Aiuto. Per fortuna non ho dovuto usarlo per molto tempo! – poshaughnessy
Grazie per l'aiuto, anche se idealmente sarebbe stata una risposta a una delle domande che hai citato nel post. La 'Ask Question' in StackOverflow è solo per fare domande! –
È bello che tu voglia aiutare. Ma il modo in cui lo fai è: _Fai una domanda_, quindi pubblicalo come risposta _ alla domanda che hai chiesto_. –
È meglio così? –