2016-07-07 2 views
0

Я делаю слайд-шоу с помощью метода get ajax, но я немного смущен тем, как он работает. Когда я нажимаю дальше, не должен запускаться через файл gallery_.php с индексом, увеличивающимся, что изменит слайд?Метод ajax get, используемый в слайд-шоу

PHP/HTML

if (!isset($_GET["index"])) { 
    $index = 0; 
} 
else{ 
    $index = $_GET["index"]; 
} 
echo "<div id='slider'> 
     <ul class='slides'> 

      <li class='slide'> 
       <div class='pic'> 
        <img src= " . $dir . $pic_array[$index] . " /> 
       </div> 
       <div class='caption'> 
        <p id='title'>$titles[$index]</p> 
        <p id='des'>$descriptions[$index]</p> 
       </div> 
       <div class='next'> 
        <i class='fa fa-arrow-right fa-2x'></i> 
       </div>  
       <div class='previous'> 
        <i class='fa fa-arrow-left fa-2x'></i> 
       </div> 
      </li>"; 

echo  "</ul> 
     </div> 


     </html>"; 

Javascript

$(function() { 
    var arrPix = $('#json_pics').val(); 
    var arrPix = $.parseJSON(arrPix); 


    var index = 0; 

    var $slider = $('#slider'); 
    var $slides = $slider.find('.slides'); 
    var $slide = $slides.find('.slide'); 
    var $next = $slides.find('.next'); 
    var $previous = $slides.find('.previous'); 
    var $caption = $slides.find('.caption'); 

    var slide_length = $slide.length; 

    $slider.hover(function() { 
      $caption.css('opacity', '1'); 
      $next.css('opacity', '1'); 
      $previous.css('opacity', '1'); 
     }, function() { 
      $caption.css('opacity', '0'); 
      $next.css('opacity', '0'); 
      $previous.css('opacity', '0'); 
     } 
    ); 
    $next.click(function() { 
     $.get("gallery_.php?index=" + 1); 
     index++; 
    }); 
}); 

ответ

0

Прямо сейчас вы делаете

$.get("gallery_.php?index=" + 1); 

и конкатенации номер в строку заканчивается как строка

$.get("gallery_.php?index=1"); 

это то, что вы отправляете каждый время, что вы хотели сделать

$.get("gallery_.php?index=" + index); 
+0

Если добавить индекс не так просто всегда будет 0, так как индекс начинается с 0? – daneh

+0

Но вы делаете 'index ++;' каждый раз, когда кто-то нажимает, что добавляет 1 ... – adeneo

+0

oh Я вижу это. Я пробовал это, и когда я нажимаю, изображение остается прежним. Он также считает, что я хочу отлаживать по какой-то причине и переносит меня на jquery.min.js на эту строку l.send (n.hasContent && n.data || null) – daneh