O motivo é bastante simples, mas difícil de descobrir: o
IE não oferece suporte a console.log ().
Se você tiver alguma impressão de console em seu código, isso lançaria exceções (portanto, quebrando o javascript depois disso) se a página fosse carregada quando as ferramentas do desenvolvedor fossem fechadas.
Mas se você tiver as ferramentas de desenvolvedor habilitadas, então, de repente, essas funções console.log () são permitidas, fazendo com que o resto do seu javascript funcione perfeitamente.
para corrigir isso, envolva suas impressões em uma instrução if:
if (console) {
console.log('...');
}