[javascript] Problema con internet explorer 8 [risolto]
Buonasera a tutti
ho dei problemi con IE8 quando devo eseguire la mia applicazione web; in pratica tramite un tasto dovrei lanciare una animazione (un immagine che appare e scompare), solo che il debug di IE mi da errore ad un if, di preciso il primo if dentro la funzione "inizia()" (mi dice 'interfaccia sconosciuta'), non riesco a capire il perché, qualcuno può aiutarmi? di seguito il codice:

ho dei problemi con IE8 quando devo eseguire la mia applicazione web; in pratica tramite un tasto dovrei lanciare una animazione (un immagine che appare e scompare), solo che il debug di IE mi da errore ad un if, di preciso il primo if dentro la funzione "inizia()" (mi dice 'interfaccia sconosciuta'), non riesco a capire il perché, qualcuno può aiutarmi? di seguito il codice:
var stop; var immagine; var paragrafo; var elemento; var tasti3; var tasti4; function lampeggia(imm,pr){ if(imm.style.visibility == 'visible' || pr.style.background == 'red'){ imm.style.visibility = 'hidden'; pr.style.background = 'red'; } else { imm.style.visibility = 'visible'; pr.style.background = 'yellow'; } } function fermati(){ blocca = document.getElementById('none'); blocca.getElementsByTagName('button')[1].disabled = false; clearInterval(stop); elemento.removeChild(immagine); elemento.removeChild(paragrafo); partasti.removeChild(tasti3); partasti.removeChild(tasti4); elemento.getElementsByTagName('button')[0].disabled = false; elemento.getElementsByTagName('button')[1].disabled = true; alert('Lavorazione terminata con successo'); } function inizia(){ for(t=0; t<2; t++){ if(campo[t].value>Number(vettore[t]) || campo[t].value=='' || campo[t].value<=0 || isNaN(campo[t].value)){ campo[t].value = 'ERRORE!'; campo[t].style.background = 'red'; return; } else campo[t].style.background = 'white'; } blocca = document.getElementById('none'); blocca.getElementsByTagName('button')[1].disabled = true; elemento = document.getElementById('a'); elemento.getElementsByTagName('button')[1].disabled = false; tasti3 = document.createElement('button'); tasti4 = document.createElement('button'); valore3 = document.createTextNode('Aumenta velocità'); valore4 = document.createTextNode('Diminuisci velocità'); tasti3.appendChild(valore3); tasti4.appendChild(valore4); tasti3.attachEvent('onclick',aumenta); tasti4.attachEvent('onclick',diminuisci); tasti4.disabled = true; partasti.appendChild(tasti3); partasti.appendChild(tasti4); immagine = document.createElement('img'); immagine.src = './immagini/lavori-in-corso.gif'; immagine.id = 'posizionamento'; immagine.alt = 'lavori in corso'; opera = document.getElementById('a'); opera.appendChild(immagine); opera.getElementsByTagName('button')[0].disabled = true; paragrafo = document.createElement('p'); paragrafo.setAttribute('id','locazione'); paragrafo.style.background = 'yellow'; scritta = document.createTextNode('LAVORAZIONE IN CORSO'); paragrafo.appendChild(scritta); opera.appendChild(paragrafo); stop = setInterval('lampeggia(immagine,paragrafo)',2000); setTimeout('fermati()',30000); } function termina(){ blocca = document.getElementById('none'); blocca.getElementsByTagName('button')[1].disabled = false; clearInterval(stop); elemento.removeChild(immagine); elemento.removeChild(paragrafo); partasti.removeChild(tasti3); partasti.removeChild(tasti4); elemento.getElementsByTagName('button')[0].disabled = false; elemento.getElementsByTagName('button')[1].disabled = true; alert('Lavorazione terminata forzatamente'); }
Risposte
risolto (e voglio sottolineare senza aiuto del prof
), praticamente ad Internet Explorer non piaceva l'assegnazione variabile-array. 'Vettore' era una variabile, è bastato trasformarla in array e con una riga di codice in più (per fare l'assegnazione), il gioco è riuscito.
