Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Как должно выглядеть условие, если перед ним расположена функция? (https://javascript.ru/forum/jquery/64973-kak-dolzhno-vyglyadet-uslovie-esli-pered-nim-raspolozhena-funkciya.html)

raindew 17.09.2016 10:50

Как должно выглядеть условие, если перед ним расположена функция?
 
Здравствуйте. Подскажите, пожалуйста, каким образом нужно изменить скрипт, чтобы можно было работать с условием "если то" для следующей функции:
-- Jquery --
$(document).ready(function(){
  $('.photo li').waitForImages(function() { // Функция, которая следит, загрузилась ли картинка.
    if($(this)){
      $(this).show(); // если картинка найдена, показываем элемент с картинкой.
    }else{
      $(this).remove(); // если нет, удаляем элемент.
    }
  });
});

-- CSS --
.photo:nth-child(1) li:nth-child(1) {background: url("../img/cake.jpg") no-repeat;} - такая картинка есть.
.photo:nth-child(2) li:nth-child(1) {background: url("../img/caked.jpg") no-repeat;} - такой нет.
.photo:nth-child(3) li:nth-child(1) {background: url("../img/cakef.jpg") no-repeat;} - такой нет.
.photo li {
  display: inline-block;
  border: 1px solid black;
  width: 270px;
  height: 200px;
}

-- HTML --
<ul class="photo">
  <li></li>
</ul>
<ul class="photo">
  <li></li>
</ul>
<ul class="photo">
  <li></li>
</ul>

рони 17.09.2016 12:09

raindew,
не могли бы вы сделать макет полностью

рони 17.09.2016 15:54

raindew,
<!DOCTYPE html>

<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
.photo:nth-child(1) li:nth-child(1) {background: url("http://i.playground.ru/i/73/56/40/00/pix/image.jpg") no-repeat; background-size: cover;}
.photo:nth-child(2) li:nth-child(1) {background: url("../img/caked.jpg") no-repeat;}
.photo:nth-child(3) li:nth-child(1) {background: url("../img/cakef.jpg") no-repeat;}
.photo li {
  display: inline-block;
  border: 1px solid black;
  width: 270px;
  height: 200px;
  opacity: 0;
}

  </style>
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
  <script src="http://cdnjs.cloudflare.com/ajax/libs/jquery.waitforimages/1.5.0/jquery.waitforimages.min.js"></script>
  <script>
$(function() {
    $('.photo li').waitForImages({
        waitForAll: true,
        each: function(loaded, count, success) {
            success ? $(this).fadeTo(500, 1) : $(this).remove()
        }
    });
});
  </script>
</head>

<body>
<ul class="photo">
  <li></li>
</ul>
<ul class="photo">
  <li></li>
</ul>
<ul class="photo">
  <li></li>
</ul>


</body>
</html>


Часовой пояс GMT +3, время: 20:17.