Обработка ошибки «404 image error» с помощью jQuery / Javascript - PullRequest
2 голосов
/ 11 января 2012

При загрузке миниатюры видео, размещенного на Youtube, ошибка 404 является действительным изображением.Например: http://i.ytimg.com/vi/eMFYg2oZ4qE/default.jpg http://i.ytimg.com/vi/0/default.jpg

Поскольку ошибка представляет собой подлинное изображение,

<img onerror="alert('error!')" src="http://i.ytimg.com/vi/0/default.jpg">

не работает при обнаружении ошибки 404 ... Как можно решить эту проблему

Ответы [ 2 ]

3 голосов
/ 11 января 2012

Я считаю, что они обрабатываются на стороне сервера на YouTube, но, поскольку вы пометили это как jQuery, используя небольшую группу изображений, вы можете проверить их существование с помощью простого запроса AJAX, а затем при неудаче изменить атрибут «src»к вашему стандартному пути к изображению.

$.ajax("/path/to/image.img", failure: function() {
  $('#this-image').attr('src', 'default.jpg');
})

В этом случае фиктивные селекторы, вам нужно, чтобы он соответствовал логике вашего приложения

0 голосов
/ 20 июля 2016

Установить изображение по умолчанию для некоторого локального изображения. и если ajax-запрос пройден, используйте образ сервера.

        var defaultImage = "/images/default_user.jpg";
        $.ajax({
            url: '/path/to/image.img',
            failure: function () {  
                 alert('Image not found in server');            
            },
            success: function () {
                defaultImage = "/path/to/image.img";
            }
        });
...