通过AJAX加载图像到jQuery Supersized插件

3
我正在尝试通过AJAX动态加载图片到jQuery“Supersized”图像滑块中:http://buildinternet.com/project/supersized/
AJAX调用成功地替换了图像,但播放按钮变得无响应,并且随后的调用会干扰幻灯片间隔时间(幻灯片切换更快)。
我已经尝试了在类似问题这里提供的所有答案(相同代码),但都没有成功。他们认为这可能是一个绑定问题。
因此,在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; }
?>
1个回答

0

不要试图传输整个 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; 
}
?>

并且可能使用


谢谢回复。如果参数有多个图像,我该如何回显?此外,在调用后,playToggle按钮无法正常工作。我明天会发布一个测试链接。 - Nathan Waters
测试网站位于http://www.9crawford.com/slider/...当您单击“Doeet”时,AJAX调用可以正常工作,下一个/上一个导航也可以正常工作,但是playToggle按钮无法正常工作。 - Nathan Waters
抱歉,我没有看到这个问题。但是我看到你已经解决了这个问题。对于所有的谷歌用户:可以使用jquery的点击事件来代替<a href="javascript:brown();">Doeet</a>。http://api.jquery.com/click/使用JSON,您可以轻松传输多维数组,而不会出现任何问题。最后:将JavaScript放在网站底部。这将提高您网站的性能。 - smo

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接