#jquery #html #css
#jquery #HTML #css
Вопрос:
Итак, я работаю над блогом / веб-сайтом с каруселью изображений с 8 местами для изображений. Я использую Owl Carousel с CouchCMS (это не должно иметь большого значения)..
Вот как выглядит карусель:
<div id="owl-demo" class="owl-carousel">
<div class="item"><img src="<cms:show blog_image />" class="carousel_image"></div>
<div class="item"><img src="<cms:show image_2 />"></div>
<div class="item"><img src="<cms:show image_3 />"></div>
<div class="item"><img src="<cms:show image_4 />"></div>
<div class="item"><img src="<cms:show image_5 />"></div>
<div class="item"><img src="<cms:show image_6 />"></div>
<div class="item"><img src="<cms:show image_7 />"></div>
<div class="item"><img src="<cms:show image_8 />"></div>
</div>
Прямо сейчас у меня есть это, так что вы можете загрузить максимум 8 изображений с помощью CouchCMS.
Если вы загружаете менее 8 изображений, остальные просто отображаются как поврежденные изображения.
Прямо сейчас я использую следующий код, чтобы просто скрыть поврежденные изображения, что, конечно, оставляет пустой div (что все же лучше, чем показывать поврежденное изображение)… Это лучшее решение, которое я мог придумать.
$("img").error(function(){
$(this).hide();
});
Кто-нибудь знает какой-нибудь способ, которым я мог бы определить, повреждено ли изображение, и скрыть весь div, содержащий изображение?
Спасибо.
Ниже приведен пример того, что я пробовал, но это не сработало.
HTML
<div class="item" id="img-8-div"><img src="<cms:show image_8 />"></div>
И вот jQuery, снова он не сработал.
$("#img-8-div").children('img').error(function(){
$(this).hide();
});
Комментарии:
1. Вы пробовали
$(function(){if($("#img-8-div").children().attr("src") == ""){ $("#img-8-div").hide();} });
Ответ №1:
Демонстрационная скрипка
Используйте родительский элемент jQuery()
$("img").error(function(){
$(this).parent().hide();
});
Комментарии:
1. У вас когда-нибудь был один из тех моментов, когда вы просто не могли придумать, что вы должны уметь? У меня только что был один из них! Спасибо!
2. Происходит много раз! Тут на помощь приходят stackoverflow/ google.