我想要做的是一個圖像滑塊,每個幻燈片不會自我重複,而是通過AJAX響應從服務器加載。所以在按下「向前」或「向後」按鈕時,我需要通過AJAX調用一個MySQL函數來更改LIMIT命令的偏移量以搜索前向結果以及AJAX響應顯示新圖像。bxSlider插件與每個幻燈片移動的ajax調用結合起來,並且每次動態更改圖像的src
我的原始代碼是這樣的:
<script src="script/jquery.bxslider.js" type="text/javascript"></script>
<script type="text/javascript">
$(document).ready(function(){
$('.slider1').bxSlider({
slideWidth: 200,
minSlides: 2,
maxSlides: 3,
slideMargin: 10
});
})
</script>
<div class="slider1">
<?php
$query = "SELECT * FROM vid LIMIT 4";
$result = mysqli_query($conn,$query);
if(!$result){echo 'error with query';}
while ($row = mysqli_fetch_assoc($result)) { ?>
<div class="slide">
<img class='img_res'src='<?php $src = "images/"; echo $src.$row['namev_id'].".png";?>' alt="Bacn">
</div>
<?php } ?>
</div>
我的猜測是在向前或向後按鈕附加AJAX調用和響應改變圖像的src的點擊:
$('.forward_btn').click(function(){
$.ajax({url: "load_results.php", success: function(result){
$("#slider1").append("<div><img src='result'></div>");
}});
但當然這是行不通的,因爲我需要將$ row數組從舊結果數組更改爲新的AJAX結果。插件的工作方式是它重複重複圖像,而我需要每次按下幻燈片按鈕來更改它的每個圖像src - 所以要更改$ row數組。在這裏,我幾乎卡住了。我現在主要擔心的是 - 如果調用返回數組,則如何從AJAX調用的結果中傳遞新的src。
我的問題是 - 如何將$ row數組從舊的MySQL結果動態更改爲新的AJAX結果?有什麼辦法可以做到嗎?
到目前爲止,我所取得的成就是:
$('.bx-next').click(function(e){
e.preventDefault();
$('.slider1').append('<div class="slide"><img src="images/57d54a2e53324.png"></div>');
$('.slider1').append('<div class="slide"><img src="images/57d54a2e53324.png"></div>');
$('.slider1').append('<div class="slide"><img src="images/57d54a2e53324.png"></div>');
$('.slider1').append('<div class="slide"><img src="images/57d54a2e53324.png"> </div>');
slider.reloadSlider();
});
在bnext編輯按鈕的第一次點擊此代碼添加圖片,但不會滑動他們。並在下一次點擊它不會添加圖像。