无法使用文本叠加功能处理cycle2轮播

时间:2015-07-05 16:22:17

标签: jquery wordpress cycle2

我正在尝试使用wordpress中的文本覆盖来处理cycle2轮播。图像只是垂直显示。我只能让基本的cycle2演示工作,而不是轮播。这是我的代码:

    <div class="cycle-slideshow" 
        data-cycle-fx="carousel"
        data-cycle-timeout="0"
        data-cycle-next="#next4"
        data-cycle-prev="#prev4"
        data-cycle-carousel-visible="5"
        data-allow-wrap="false"
    data-cycle-slides="> a"
      >
    <div class="cycle-overlay"></div>
        <a href="http://google.com" data-cycle-title="first" data-cycle-  desc="first description"><img src="http://malsup.github.io/images/beach1.jpg"></a>
        <a href="http://google.com" data-cycle-title="two" data-cycle-desc="second description"><img src="http://malsup.github.io/images/beach2.jpg"></a>
        <a href="http://google.com" data-cycle-title="three" data-cycle-desc="third description"><img src="http://malsup.github.io/images/beach3.jpg"></a>
        <a href="http://google.com" data-cycle-title="four" data-cycle-desc="fourth description"><img src="http://malsup.github.io/images/beach4.jpg"></a>
       <a href="http://google.com" data-cycle-title="five" data-cycle-desc="fifth description"><img src="http://malsup.github.io/images/beach5.jpg"></a>
       <a href="http://google.com" data-cycle-title="six" data-cycle-desc="sixth description"><img src="http://malsup.github.io/images/beach6.jpg"></a>
       <a href="http://google.com" data-cycle-title="seven" data-cycle-desc="seventh description"><img src="http://malsup.github.io/images/beach7.jpg"></a>
       <a href="http://google.com" data-cycle-title="eight" data-cycle-desc="eight description"><img src="http://malsup.github.io/images/beach8.jpg"></a>
       <a href="http://google.com" data-cycle-title="nine" data-cycle-desc="ninth description"><img src="http://malsup.github.io/images/beach9.jpg"></a>
</div>

 <div class=center>
    <a href=# id=prev4><< Prev </a>
    <a href=# id=next4> Next >> </a>
 </div>


/* overlay */
.cycle-overlay { 
        position: absolute;
    bottom: 0;
    width: 150px;
    max-width: 800px;
    z-index: 600;
        background: black;
    color: white;
  }


  function my_scripts_method1() {
      wp_register_script('my-script1', get_stylesheet_directory() . '/js/jquery.cycle2.min.js',array('jquery'));
   if ( is_page('home') ){   
    wp_enqueue_script('my-script1');
}
 }
 function my_scripts_method2() {
 wp_register_script('custom-script', get_stylesheet_directory() . '/js/jquery.cycle2.carousel.min.js',array('jquery'));

    if ( is_page('home') ){ 
    wp_enqueue_script('custom-script');
}
  }

  if ( !is_admin() ) {
    add_action('wp_enqueue_scripts','my_scripts_method1');
    add_action('wp_enqueue_scripts','my_scripts_method2');
}

2 个答案:

答案 0 :(得分:0)

如果您的基本幻灯片正在运行但不是轮播,则必须缺少所需功能所需的Cycle2 Carousel插件。在Cycle2下载页面上找到它

http://malsup.github.io/min/jquery.cycle2.carousel.min.js

修改

将脚本排入队列的正确方法是处理wp_enqueue_script()参数中的依赖项。

您可以使用单个操作直接排队所有脚本,而无需单独注册脚本。以下简化代码将通过在适当的时间包含脚本依赖项来解决您的问题。

function my_scripts_method() {
    $template_dir = get_template_directory_uri();
    if ( is_page('home') ){
        wp_enqueue_script( 'cycle2', $template_dir . '/js/jquery.cycle2.min.js',array( 'jquery' ) );
        wp_enqueue_script( 'cycle2-carousel', $template_dir . '/js/jquery.cycle2.carousel.min.js', array( 'jquery', 'cycle2' ) );
    }
}

add_action( 'wp_enqueue_scripts', 'my_scripts_method' );

要验证两个脚本是否正在排队,您可以检查呈现页面的html源代码。

答案 1 :(得分:0)

这似乎对我有用。仔细检查您是否包含jquery.cycle2.js以及jquery.cycle2.carousel.js。 JSfiddle:http://jsfiddle.net/omikey/3jsLsrch/1/