2011-05-29 14 views
5

Ho testato il mio sito con il nuovo IE 9 e ho ricevuto l'errore indicando INVALID_CHARACTER_ERR (5). In IE 9, gli strumenti di sviluppo evidenzia questa linea. Qualcuno può aiutarmi con questo errore?Javascript: DOM Eccezione: INVALID_CHARACTER_ERR (5)

Errore linea

this.iframe = document.createElement('<IFRAME src="' + myCurrentUrl + '" frameborder=0>'); 


Function Code 
__createDivs : function() 
{ 
this.divs_transparentDiv = document.createElement('DIV'); 
this.divs_transparentDiv.className='modalDialog_transparentDivs'; 
this.divs_transparentDiv.style.left = '0px'; 
this.divs_transparentDiv.style.top = '0px'; 
document.body.appendChild(this.divs_transparentDiv); 
this.divs_content = document.createElement('DIV'); 
this.divs_content.className = 'modalDialog_contentDiv'; 
this.divs_content.id = 'DHTMLSuite_modalBox_contentDiv'; 
this.divs_content.style.zIndex = 100000; 
if(this.MSIE){ 
var myCurrentUrl = GlobPanelCurrentBaseUrl + 'images/spacer.gif'; 
this.iframe = document.createElement('<IFRAME src="' + myCurrentUrl + '" frameborder=0>'); 
this.iframe.style.zIndex = 90000; 
this.iframe.style.position = 'absolute'; 
document.body.appendChild(this.iframe); 
} 
document.body.appendChild(this.divs_content); 
this.divs_shadow = document.createElement('DIV'); 
this.divs_shadow.className = 'modalDialog_contentDiv_shadow'; 
this.divs_shadow.style.zIndex = 95000; 
document.body.appendChild(this.divs_shadow); 
window.refToModMessage = this; 
this.addEvent(window,'scroll',function(e){ window.refToModMessage.__repositionTransparentDiv() }); 
this.addEvent(window,'resize',function(e){ window.refToModMessage.__repositionTransparentDiv() }); 
} 
+2

FYI, vecchie versioni di IE permesso per passare HTML arbitrario in createElement, ma si tratta di una violazione delle specifiche. – Neil

risposta

10

proprietà Sì, si suppone di dare solo il nome dell'elemento, quindi impostare su di esso in questo modo:

this.iframe = document.createElement('iframe'); 
this.iframe.src = myCurrentUrl; 
this.iframe.frameBorder = 0; 
+0

Grazie, sono stato in grado di risolvere il problema utilizzando il seguente this.iframe = document.createElement ("iframe"); this.iframe.setAttribute ("src", myCurrentUrl); this.iframe.setAttribute ("style", "position: absolute; z-index: 90000;"); this.iframe.frameBorder = 0; –

Problemi correlati