Как скрыть элемент в jQuery

0

Имею следующий код..

<img src="" id="image1" >
<img src="www" id="image1" >

<img src="" id="image2" >
<img src="www" id="image2" >

<div id="imagesrc"></div>

Как я могу скрыть div с id (#imagesrc) когда #image1 имеет src="", и покажите мой div (#imagesrc), когда #image1 есть src !=""?

  • 3
    Ваш вопрос неясен, потому что у вас есть несколько элементов с одинаковым идентификатором. Div #imagesrc не может быть показан и скрыт одновременно. Или это просто примеры, и есть только один элемент с одинаковым идентификатором, и вы просто продублировали его, чтобы продемонстрировать, что элемент может иметь разные значения для src ?
  • 1
    Кстати, если бы это было так, как я сказал, самое короткое решение JS было бы $('#imagesrc').toggle($('#image1[src!='']').length > 0) .
Теги:

6 ответов

1
Лучший ответ

пытаться

       $(document).ready(function () {
        if ($("#image1").attr("src") == "") {
            $("#imagesrc").hide();
        }
        else {
            $("#imagesrc").show();
        }
    });

Обновить

$("#image1").change(function () {
var imgControlName = "#imagesrc";

readURL(this, imgControlName);
 if (jQuery("#preview").attr("src") == "") {
    jQuery("#remove").hide();
} else {
    jQuery("#remove").show();

}
});

демонстрация

  • 0
    Не работа. Когда src == "" скрыл мой идентификатор, но когда загрузил мое изображение и появились данные src, не показывать мой идентификатор.
  • 0
    как вы загружаете изображение?
Показать ещё 4 комментария
2

CSS чистый, без JavaScript и автоматически реагирует на изменения.

Конечно, он предполагает, что ваша разметка действительно выглядит так.

#image1[src=""] ~ #imagesrc {
    display: none;
}
  • 0
    узнал по-новому, спасибо ...
0

//включить jquery.js

<script type="text/javascript">
$(document).ready(function(){
 if($('#image1').attr('src')==""){
  $('#imagesrc').hide(); //you can also give $('#imagesrc').css('display','none');
 }
});
</script>

Также не помещайте одинаковые "id" в более чем 1 элемент. Вместо этого используйте класс.

Надеюсь, у вас есть идея...

  • 0
    Не работа. Когда src == "" скрыл мой идентификатор, но когда загрузил мое изображение и появились данные src, не показывать мой идентификатор.
  • 0
    @golaz всегда хорошо давать ссылку jsfiddle при запуске.
0

Попробуйте любой из подходов.

 if($("#image1").attr('src') != ''){
       $('#imagesrc').hide();
    }else{
       $('#imagesrc').show();
    }

или

$('#imagesrc').toggle($("#image1").attr('src') != '');
  • 0
    Не работа. Когда src == "" скрыл мой идентификатор, но когда загрузил мое изображение и появились данные src, не показывать мой идентификатор.
  • 0
    После загрузки изображения вы должны снова вызвать тот же код, чтобы сделать изображение видимым
Показать ещё 3 комментария
0

Попробуйте этот полный код

вы можете использовать attr для вызова любого значения attribute элемента html или для установки значения attribute

<html xmlns="http://www.w3.org/1999/xhtml">

<head>
  <title></title>
  <script src="http://code.jquery.com/jquery-1.11.0.min.js"></script>
</head>

<body>

<img src="" id="image1" >
<img src="www" id="image1" >

<img src="" id="image2" >
<img src="www" id="image2" >

<div id="imagesrc"></div>


<script>
$( document ).ready(function() {

  if ($("#image1").attr("src") == "")
  {
      $("#imagesrc").hide();
   }
   else
   {
      $("#imagesrc").show();
   }
});
</script>
</body>
</html>
  • 0
    Не работа. Когда src == "" скрыл мой идентификатор, но когда загрузил мое изображение и появились данные src, не показывать мой идентификатор.
  • 0
    что вы подразумеваете под загрузкой моего изображения, используете ли вы другой код, пожалуйста, опубликуйте его здесь, чтобы смешать коды для получения конечного результата
Показать ещё 1 комментарий
0

попробуй это

$(function(){ //ready function 
    $('#imagesrc').show(); //show the imagesrc div.you can avoid this, if imagesrc div is already shown
    if($('#image1').attr('src')==""){ //check for condition
        $('#imagesrc').hide(); //if true hide it
    }
});

Ещё вопросы

Сообщество Overcoder
Наверх
Меню