由php回应的动态javascript不起作用

时间:2014-07-24 19:22:25

标签: javascript php jquery wordpress

我正在回复一个带有php的javascript片段。问题是,当我动态加载该代码段时,它不起作用。但是当我把生成的javascript放在这个地方并评论php时,它就可以了。

代码:

 <script type="text/javascript">
        $(document).ready(function(){
            $.supersized({

                // Functionality
                slideshow               :   1,          // Slideshow on/off
                autoplay                :   1,          // Slideshow starts playing automatically
                start_slide             :   1,          // Start slide (0 is random)
                stop_loop               :   0,          // Pauses slideshow on last slide
                random                  :   0,          // Randomize slide order (Ignores start slide)
                slide_interval          :   5000,       // Length between transitions
                transition              :   2,          // 0-None, 1-Fade, 2-Slide Top, 3-Slide Right, 4-Slide Bottom, 5-Slide Left, 6-Carousel Right, 7-Carousel Left
                transition_speed        :   600,        // 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

                // 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_always              :   0,          // Image will never exceed browser width or height (Ignores min. dimensions)
                fit_portrait            :   1,          // Portrait images will not exceed browser height
                fit_landscape           :   0,          // Landscape images will not exceed browser width

                // Components
                slide_links             :   'blank',    // Individual links for each slide (Options: false, 'num', 'name', 'blank')
                thumb_links             :   0,          // Individual thumb links for each slide
                thumbnail_navigation    :   0,          // Thumbnail navigation
                slides                  :   [           // Slideshow Images
                    <?php
                        $loop = new WP_Query('post_type=slide');
                        if($loop->have_posts()):while($loop->have_posts()):$loop->the_post();
                    ?>
                    {
                        image : '<?php the_field('slide_pic'); ?>',
                        title : '<h2><?php the_content(); ?></h2>',
                        thumb : '',
                        url : ''
                    },

                    <?php endwhile;endif;wp_reset_query(); ?>
                ],

                // Theme Options
                progress_bar            :   0,          // Timer for each slide
                mouse_scrub             :   0

            });
        });
    </script> 

生成的javascript:

<script type="text/javascript">
        $(document).load(function(){
            $.supersized({

                // Functionality
                slideshow               :   1,          // Slideshow on/off
                autoplay                :   1,          // Slideshow starts playing automatically
                start_slide             :   1,          // Start slide (0 is random)
                stop_loop               :   0,          // Pauses slideshow on last slide
                random                  :   0,          // Randomize slide order (Ignores start slide)
                slide_interval          :   5000,       // Length between transitions
                transition              :   2,          // 0-None, 1-Fade, 2-Slide Top, 3-Slide Right, 4-Slide Bottom, 5-Slide Left, 6-Carousel Right, 7-Carousel Left
                transition_speed        :   600,        // 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

                // 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_always              :   0,          // Image will never exceed browser width or height (Ignores min. dimensions)
                fit_portrait            :   1,          // Portrait images will not exceed browser height
                fit_landscape           :   0,          // Landscape images will not exceed browser width

                // Components
                slide_links             :   'blank',    // Individual links for each slide (Options: false, 'num', 'name', 'blank')
                thumb_links             :   0,          // Individual thumb links for each slide
                thumbnail_navigation    :   0,          // Thumbnail navigation
                slides                  :   [           // Slideshow Images
                                        {
                        image : 'http://mahpari.dev/wp-content/uploads/2014/07/image4.jpg',
                        title : '<h2><p>شعار مورد نظر 2</p>
</h2>',
                        thumb : '',
                        url : ''
                    },

                                        {
                        image : 'http://mahpari.dev/wp-content/uploads/2014/07/image1.jpg',
                        title : '<h2><p>شعار مورد نظر 1</p>
</h2>',
                        thumb : '',
                        url : ''
                    },

                                    ],

                // Theme Options
                progress_bar            :   0,          // Timer for each slide
                mouse_scrub             :   0

            });
        });
    </script>

有什么想法吗?

2 个答案:

答案 0 :(得分:2)

问题似乎是换行符。这将产生错误。 (SyntaxError: Unexpected EOF

title : '<h2><p>شعار مورد نظر 2</p>
</h2>',

应该更好:

title : '<h2><p>شعار مورد نظر 2</p>\n</h2>',

答案 1 :(得分:0)

在这里,#34;而#34;循环:

       url : ''
    },   // <--dangling comma
        ],

Internet Explorer对这些问题特别苛刻,并且会出现语法错误。