He reducido el área de mi problema a la siguiente función. Es parte de un UserScript que estoy escribiendo. Funciona perfectamente en Chrome, pero no funciona en absoluto en Firefox/Greasemonkey. He jugado con eso todo el día y he golpeado una pared de ladrillos. Lo único que tiene sentido es si JSON.parse no funciona correctamente, lo que tendría sentido ya que se sabe que Chrome maneja JSON.parse de forma algo diferente ... ¡pero sé que el JSON está perfectamente formado!XMLHttpRequest para el archivo JSON funciona perfectamente en Chrome, pero no en Firefox
function getTagline() {
var jsonfile = new XMLHttpRequest();
jsonfile.open("GET", "http://example.com/somegood.json", true);
jsonfile.onreadystatechange = function() {
if (jsonfile.readyState == 4) {
if (jsonfile.status == 200) {
var taglines = JSON.parse(jsonfile.responseText);
var choose = Math.floor(Math.random() * taglines.length);
var tagline = document.createTextNode(taglines[choose].metais);
insertTagline(tagline);
}
}
};
jsonfile.send(null);
}
¿Alguna idea?
¿Podría publicar parte del JSON que está tratando de analizar? – Grego
Aquí hay un ejemplo: [{"commenturl": ["/ 107669/Solutionism-is-the-new-Optimism # 3934686"], "metais": ["Metafilter: se tomó el día libre y se sentó en el sótano en la oscuridad y realmente no respondió a nada "]," usuario ": [" hengeman misterioso "]}, {" comentarista ": ["/107126/Lancelot-Link-Secret-Chimp # 3905976 "]," metais " : ["Metafilter: no son monos. Son pedantes."], "Usuario": ["Daddy-O"]}, {"commenturl": ["/ 107129/My-job-is-to -watch-dreams-die # 3906426 "]," metais ": [" MetaFilter: personas casi terribles que se esconden detrás de buenos enlaces "]," usuario ": [" Faint of Butt "]}] – gilrain
Entonces, es una lista de objetos . Debería ser válido, de acuerdo con JSON.org. Creo ...: P – gilrain