Olá a todos, ja pesquisei muito, mas muito mesmo e não encontro uma forma utilizando javascript de obter o codigo fonte de dentro da tag head no internet explorer 8
pois no IE 9, chrome, FF , etc funciona perfeitamente a chamada:
function contentFromIframe(iFrameName){
var myIFrame = (document.getElementById(iFrameName).contentWindow);
var frameHead = myIFrame.document.head.innerHTML;
var frameBody = myIFrame.document.body.innerHTML;
document.getElementById('conteudoFrameHead').value = frameHead;
document.getElementById('conteudoFrameBody').value = frameBody;
}
e no internet explorer 8 a linha:
var frameHead = myIFrame.document.head.innerHTML;
não vai acho que não existe esta opção. Pesquisando na net encontrei isso:
var frameHead = myIFrame.document.getElementsByTagName("head")[0];
porém não consigo pegar o innerHTML ele vem totalmente vazio.
Alguém sabe oque pode ser feito para conseguir obter isso no IE 8
Enfim consegui uma solução o único jeito de se fazer isso funcionar no IE8 é utilizando JQuery postei o código abaixo para quem precisar futuramente
Obrigado pela atenção de todos
function contentFromIframe(iFrameName){
var myIFrame = (document.getElementById(iFrameName).contentWindow);
var frameHead;
var IE = false;
//identifica se o navegador é um internet explorer e faz o tratamento para se caso for a versão 8
if (navigator.appName == "Microsoft Internet Explorer"){
var version;
var ua = navigator.userAgent;
var re = new RegExp("MSIE ([0-9]{1,}[\.0-9]{0,})");
if (re.exec(ua) != null){
version = parseFloat( RegExp.$1 );
}
if(version == 8){
IE = true;
}
}
if(IE){
frameHead = jQuery("head").html();
}else{
frameHead = myIFrame.document.head.innerHTML;
}
var frameBody = myIFrame.document.body.innerHTML;
document.getElementById('conteudoFrameHead').value = frameHead;
document.getElementById('conteudoFrameBody').value = frameBody;
}