Boa tarde. estou com um problema em um cod onde o metodo onreadystatechange não funciona no IE. Fala que não foi implementado. alguém pode me ajudar. abaixo o cod document.write(unescape("%3Cscript src='js/marcaPalavra.js' type='text/javascript'%3E%3C/script%3E"));
blog = {
id_blog : 1,
ajaxObject : null,
words : new Array(), // Keywords
isIE : true,
//Montando objeto XMLHttpRequest
getHTTPObject: function() {
try {
// Firefox, Opera, Safari
console.log("firefox, chrome");
blog.isIE = false;
return new XMLHttpRequest();
}
catch (e) {
// Internet Explorer
try {
console.log("IE 1");
blog.isIE = true;
return new ActiveXObject("Msxml2.XMLHTTP");
}
catch (e) {
try {
console.log("IE 2");
blog.isIE = true;
return new ActiveXObject("Microsoft.XMLHTTP");
}
catch (e) {
alert("Your browser does not support AJAX!");
return false;
}
}
}
},
//chama o php que pega as palavras do banco
sendIdBlog : function(){
blog.ajaxObject = blog.getHTTPObject();
if (blog.ajaxObject != null)
{
blog.ajaxObject.open("GET", "testephp.php?blog="+blog.id_blog, false);
blog.ajaxObject.send(null);
blog.ajaxObject.onreadystatechange =
( blog.isIE )
? blog.setWords //recebe o resultado vindo do php IE
: blog.setWords(); //recebe o resultado vindo do php outros navegadores
}
blog.ajaxObject = null;
},
// Recebendo as palavras
setWords: function(){
var json_string = '';
if (blog.ajaxObject.readyState == 4)
{
if(blog.ajaxObject.status == 200) {
json_string = blog.ajaxObject.responseText;
blog.words = eval(json_string);
console.log(blog.words);
}
}
},
//passa o array de palavras a serem grifadas
loadWords: function() {
blog.sendIdBlog();
return blog.words;
}
}