jquery Supersize显示IE错误

时间:2012-05-29 06:19:22

标签: javascript jquery wordpress supersized

我正在尝试将supersize Jquery集成到Wordpress中。

我知道有一个WP插件,但我更喜欢手动执行此操作,因为我使用自定义标题,自定义模板和幻灯片的wp-ecommerce产品帖子(很难与插件集成)

一切都很好,除非我在IE中收到错误,因为最后的幻灯片逗号没有删除。

IE错误是:消息:'base.options.slides [...] .thumb'为null或不是对象

===================

编辑:我更新了以下代码以反映Naor的答案 - 他的建议完美无缺(感谢Naor !!)

<!--
Supersized 3.2.7 - Fullscreen Background jQuery Plugin
www.buildinternet.com/project/supersized

By Sam Dunn / One Mighty Roar (www.onemightyroar.com)
Released under MIT License / GPL License

    Adapted for Wordpress (WP Supersized 3.0.2) by Benoit De Boeck / World in my Eyes (www.worldinmyeyes.be)
-->    
    <script type="text/javascript"> 

var slides=[];

<?php $my_query = new WP_Query
( array(
        'post_status' => 'publish',
        'post_type'   => 'wpsc-product',
  //'numberposts' => 5,
        'orderby'     => 'title',
    'order'       => 'ASC',
        // 'wpsc_product_category'=>'phones, laptops', // leave this out if you want to show all, or comma separate to specify categories
    'showposts'   => 50 )); 

while( $my_query->have_posts() ) : $my_query->the_post();  ?>

slides.push({image : '<?php echo wpsc_the_product_image(); ?>', title : '<div class="slidecaptioninside"><a href="<?php echo wpsc_the_product_permalink(); ?>"><?php echo wpsc_the_product_title(); ?></a> <br /><div class="slidedescription"><?php $excerpt = wpsc_the_product_description(); echo string_limit_words($excerpt,5)."...";?>  <br />Priced from- <?php echo wpsc_the_product_price(); ?> - <a href="<?php echo wpsc_the_product_permalink(); ?>">find out more</a></div>', url : '<?php echo wpsc_the_product_permalink(); ?>'});

<?php endwhile; ?>

jQuery(document).ready(function($) {
            $.supersized({

                //Functionality
                slideshow               :   1,      //Slideshow on/off
                autoplay                :   1,      //Slideshow starts playing automatically
                start_slide             :   1,      //Start slide (0 is random)
                slide_interval          :   6000,   //Length between transitions
                random                  :   0,
                transition              :   1,      //0-None, 1-Fade, 2-Slide Top, 3-Slide Right, 4-Slide Bottom, 5-Slide Left, 6-Carousel Right, 7-Carousel Left
                transition_speed        :   800,    //Speed of transition
                new_window              :   1,      //Image links open in new window/tab
                pause_hover             :   0,      //Pause slideshow on hover
                keyboard_nav            :   1,      //Keyboard navigation on/off
                performance             :   1,      //0-Normal, 1-Hybrid speed/quality, 2-Optimizes image quality, 3-Optimizes transition speed // (Only works for Firefox/IE, not Webkit)
                image_protect           :   1,      //Disables image dragging and right click with Javascript
                image_path              :   '<?php bloginfo('template_url'); ?>/supersized/img/', //Default image path

                //Size & Position
                min_width               :   0,      //Min width allowed (in pixels)
                min_height              :   0,      //Min height allowed (in pixels)
                vertical_center         :   1,      //Vertically center background
                horizontal_center       :   1,      //Horizontally center background
                fit_portrait            :   1,      //Portrait images will not exceed browser height
                fit_landscape           :   0,      //Landscape images will not exceed browser width

                //Components
                //navigation              :   1,        //Slideshow controls on/off
                thumbnail_navigation    :   1,      //Thumbnail navigation
                thumb_links             :    1,
                slide_counter           :   1,      //Display slide numbers
                slide_captions          :   1,      //Slide caption (Pull from "title" in slides array)
                slides                  :   slides,



                slide_links     : 'blank',
                progress_bar    : 1,                        
                mouse_scrub     : 1                                             
            }); 
        });
    </script>

1 个答案:

答案 0 :(得分:2)

我不熟悉php,但你可以在超大规模初始化之前准备slide数组,如下所示:

var slides=[];

<?php while( $my_query->have_posts() ) : $my_query->the_post();  ?>

slides.push({image : '<?php echo wpsc_the_product_image(); ?>', title : '<div class="slidecaptioninside"><a href="<?php echo wpsc_the_product_permalink(); ?>"><?php echo wpsc_the_product_title(); ?></a> <br /><div class="slidedescription"><?php $excerpt = wpsc_the_product_description(); echo string_limit_words($excerpt,5)."...";?>  <br />Priced from- <?php echo wpsc_the_product_price(); ?> - <a href="<?php echo wpsc_the_product_permalink(); ?>">find out more</a></div>', url : '<?php echo wpsc_the_product_permalink(); ?>'});

<?php endwhile; ?>   

然后初始化超大尺寸:

   $.supersized({
                 ....
                 ....
                 ....
                 slides: slides,
                 ....
                 ....
    });

希望这有帮助。

祝你好运!