我正在尝试通过AJAX将图像动态加载到jQuery“超大尺寸”图像滑块中:http://buildinternet.com/project/supersized/

AJAX调用可以很好地替换图像,但是播放按钮将变得无响应,随后的调用会干扰幻灯片间隔时间(幻灯片更改速度更快)。

我尝试了类似问题here(相同代码)中提供的所有答案(没有运气)。他们认为这可能是一个具有约束力的问题。

因此在html中:

<a href="javascript:brown();">Doeet</a>


Ajax呼叫:

function red(){
  $.ajax({
  url: 'ajax.php?action=brown',
  success: function(data){
  $('#script').html(data);
  }
  })
}


Ajax.php:

<?php switch($_GET["action"]){
  case "brown":
  echo "<script type='text/javascript'>
  jQuery(function($){
    $('#supersized').html('');
        $.supersized({
            slides : [{image : 'image1.jpg'},
                       {image : 'image2.jpg'}]

            });
    });</script>";
   break; }
?>

最佳答案

不要尝试传递整个javascript代码进行传输。只传送您需要的参数:

function red(){
  $.ajax({
    url: 'ajax.php?action=brown',
    success: function(data){
      if (data != "") {
        $('#supersized').html('');
        $.supersized({
          slides : [{image : data}],
          ....
        });
      }
    }
  })
}


的PHP:

<?php
switch($_GET["action"]){
    case "brown":
    echo "imagename.jpg";
    break;
}
?>


并可以使用


http://api.jquery.com/jQuery.parseJSON/
http://api.jquery.com/click/

10-08 03:10