2014-03-28 2 views
0

Вопрос может выглядеть простым, но я нашел ответ очень неуловимым. У меня есть сервер крики, транслирующий два изображения, и их можно извлекать только из определенных URL-адресов, которые не содержат тип файла. То, что я пытаюсь сделать, это получить обложку альбома, которая транслируется по постоянному URL-адресу. Если у этого URL-адреса нет изображения, которое можно использовать, переключитесь на другой URL-адрес. Код, который я написал, находится на JS fiddle. И вот беда место:Javascript проверьте изображение без файла

try { console.log("testing..."); if (img2.height > 0) { //I have to use something other than the image height, because //that's already determined by CSS //thus always setting clear to true, //regardless of the image. console.log("cleared [true]"); clear = true; } else { console.log("cleared [false]"); clear = false; }

Одно решение, которое я думал, может работать в браузере пользователя подбрасывает ошибку в консоли «Ресурс интерпретировано как изображение, но передаются с MIME тип текста/равнина», но из что я собрал, javascript не может получить доступ к такой информации. Я также пробовал множество сравнений в выражении if, но без везения они всегда дают одинаковые результаты независимо от изображения. Поэтому я попал в блокпост и не знаю, что мне нужно, я ненавижу оставлять это так открыто, но это действительно лучшее, что у меня есть. У меня есть сервер, на котором работают два музыкальных трека и их обложки альбомов, я дам вам, ребята, поиграть с ним.

+0

Возможно, это ваша проблема? http://stackoverflow.com/questions/16084374/jquery-width-and-height-return-0-for-img-element –

ответ

0

Используйте onerror событие, как:

img2.onerror = function(){ 
    alert('see'); 
} 

http://jsfiddle.net/364F8/1/

Я не переписывание кода, но вы должны увидеть, как это работает на примере.

Смежные вопросы