需要合并两段代码 - PHP,jQuery - JS Slides

时间:2012-08-27 01:58:38

标签: php jquery slider

我需要一起使用两段代码。我想以更清晰简洁的方式再次提出这个问题,因为阅读我的上一个问题 - 甚至让我感到困惑。

我已经找到了需要做的事情,我只是觉得我做得不对。

我需要做的是防止无限循环在JS幻灯片中播放。 是的,幻灯片在WP中,所以整个交换$ for jQuery要考虑。

这是主题作者修改代码的地方:

    <?php if (is_page_template('page-template-home-jquery.php') || is_page_template('page-template-home-jquery-sidebar.php')) { ?>
    <?php echo '<script type="text/javascript">
    // Homepage slider setup. Issued in the footer to accept user-set variables.
    jQuery(document).ready(function(){
jQuery(\'#slides\').slides({
      preload: false,
      //preloadImage: \'http://files.truethemes.net/themes/sterling-wp/ajax-loader.gif\',
      autoHeight: true,
      effect: \''.$truethemes_jslide_effect.'\',
      slideSpeed: '.$truethemes_jslide_speed.',
      play: '.$truethemes_jslide_delay.',
      randomize: '.$truethemes_jslide_randomize.',
      hoverPause: '.$truethemes_jslide_pause_hover.',
      pause: '.$truethemes_jslide_delay.',

  });
    });
    </script>';?>
    <?php } ?> 

这是“应该”完成我需要的东西,我发现它在其他网站上工作:

    $(function(){
    var total = $("#slides img").length - 2; // Subtract Two arrows
    $('#slides').slides({
    animationComplete: function(current) {
    if (current >= total) {
    clearInterval($('#slides').data('interval'));
    }
    },
    });

不幸的是,当我在我的网站上试用它时,它会破坏自动播放并删除分页。

这是我设法将其付诸实践的目的:

    jQuery(document).ready(function(){
    var total = $("#slides img").length - 2;
    jQuery('#slides').slides({
    animationComplete: function(current) {
    if (current >= total) {
    clearInterval($('#slides').data('interval'));
    }
    },
    preload: false,
    //preloadImage: 'http://files.truethemes.net/themes/sterling-wp/ajax-loader.gif',
    autoHeight: true,
    effect: 'fade',
    slideSpeed: 10000,
    play: 7000,
    randomize: false,
    hoverPause: true,
    pause: 7000,
    });
    }); 

您可能会注意到我的努力不包括在我的主题中包含的原始代码中提取的“预设”设置,这些代码在php(对我来说)中很复杂。

我知道我没有这样做,可能没有走上正轨。我确实收到了“作者”的回复,他的指示是将其放入页脚并上传。不知道你,但我认为他或她应该假设我会在联系他们之前尝试过。所以,不用说......那是一个半身像。

以下是使用我尝试合并的代码的网站的链接:

http://alliancebrokeragecorp.com/

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

万一其他人在使用WP主题时遇到麻烦,我想我会在这里发布解决方案:

    <?php if (is_page_template('page-template-home-jquery.php') || is_page_template('page-template-home-jquery-sidebar.php')) { ?>
    <?php echo '<script type="text/javascript">
    // Homepage slider setup. Issued in the footer to accept user-set variables.
    jQuery(document).ready(function(){
    var total = jQuery(".slides_container .home-slider-post").length;
    jQuery(\'#slides\').slides({
    animationComplete: function(current) {
      if (current >= total) {
      clearInterval(jQuery("#slides").data("interval"));
     }
   },
      preload: false,
      autoHeight: true,
      effect: \''.$truethemes_jslide_effect.'\',
      slideSpeed: '.$truethemes_jslide_speed.',
      play: '.$truethemes_jslide_delay.',
      randomize: '.$truethemes_jslide_randomize.',
      //hoverPause: '.$truethemes_jslide_pause_hover.',
     // pause: '.$truethemes_jslide_delay.',
  });
   });
 </script>';?>
 <?php } ?>