Как я могу обнаружить последний снимок и отключить следующую кнопку в jquery

0

Я пытаюсь разработать всплывающее окно, которое содержит изображения в нем, но теперь проблема заключается в том, когда я нажимаю на следующую кнопку, и фотографии заканчиваются, тогда я вижу текст alt, который я не хочу видеть, что я хочу, чтобы код обнаружил последний снимок и отключает следующую кнопку. а также на предвстречу, я хочу, чтобы это было так. Я пробовал в кодах ниже, но не повезло:

//Here is the html part 
<div id="popup_boxAvian1"> 
<div class="divsAvian">
<div class ="mainimage1"><img src="images/avian/pdf1.jpg" alt="alt" /></div>
<div class ="mainimage2"><img src="images/avian/pdf2.jpg" alt="alt" /></div>
<div class ="mainimage3"><img src="images/avian/pdf3.jpg" alt="alt" /></div>
<div class ="mainimage4"><img src="images/avian/pdf4.jpg" alt="alt" /></div>
<div class ="mainimage5"><img src="images/avaian/pdf5.jpg" alt="alt" /></div>
</div>
<a id="prevAvian1">prev</a>
<a id="nextAvian1">next</a>
 <a id="popupBoxCloseAvian1">Close</a>   
</div>
</div>


//This is Jquery codes

$(document).ready(function(){


/*I am trying to disable the next button on the last picture */
if($(".divsAvian div:last")){
$("#nextAvian1").hide();
}
/*I am trying to dis able the next button on the last picture ends */

    $(".divsAvian div").each(function(e) {
        if (e != 0)
            $(this).hide();
    });

    $("#nextAvian1").click(function(){
        if ($(".divsAvian div:visible").next().length != 0)
            $(".divsAvian div:visible").next().show().prev().hide();

        else {
            $(".divsAvian div:visible").hide();
            $(".divsAvian div:first").show();
        }

        return false;
    });

    $("#prevAvian1").click(function(){
        if ($(".divsAvian div:visible").prev().length != 0)
            $(".divsAvian div:visible").prev().show().next().hide();
        else {
            $(".divsAvian div:visible").hide();
            $(".divsAvian div:last").show();
        }
        return false;
    });
});
  • 0
    Ваш блок .each не нужен - $('.divsAvian div').hide().first().show()
Теги:

1 ответ

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

Я думаю, вы можете попробовать проверить, является ли целевой элемент видимым:

/*I am trying to disable the next button on the last picture */
if($(".divsAvian div:last").is(':visible')){
    $("#nextAvian1").hide();
}else if($(".divsAvian div:first").is(':visible')){
    $("#prevAvian1").hide();
}

{Смотрите демо здесь}

  • 0
    Все еще видно, но ваши усилия приветствуются
  • 0
    @JavaWest попробуйте здесь
Показать ещё 3 комментария

Ещё вопросы

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