jquery Supersize show IE error

I am attempting to integrate supersize Jquery into WordPress.

I know there is a WP plugin out there, but would prefer to do this manually as I am using custom headers, custom templates and wp-ecommerce product posts for the slides (hard to integrate with the plugin)

Read More

Everything works great, except I get an error in IE due to the final slide comma not being removed.

The IE error is: Message: ‘base.options.slides[…].thumb’ is null or not an object

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

EDIT: I updated the code below to reflect Naor’s answer – his suggestion worked perfectly (thanks 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>

Related posts

Leave a Reply

1 comment

  1. I am not familiar with php but you can prepare the slides array before the supersized initialization like this:

    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; ?>   
    

    And then initialize supersized:

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

    Hope this is helps.

    Good Luck!