多个jquery函数不起作用

时间:2012-10-06 22:17:56

标签: jquery anythingslider

我一直在努力弄清楚为什么我的代码无效。我在jQuery中有多个函数,当我尝试将它们组合起来时,其中一个函数将无效。

这是我现在的全部代码。

        jQuery(document).ready(function($){
        jQuery('#slider').anythingSlider({
            mode                : 'h',   // fade mode - new in v1.8!
            easing              : '<?php echo $data['slideshow_transition']; ?>',
            buildArrows         : <?php echo $data['slide_arrows']; ?>,      // If true, builds the forwards and backwards buttons 
            buildNavigation     : <?php echo $data['slide_anchor']; ?>,      // If true, builds a list of anchor links to link to each panel 
            buildStartStop      : <?php echo $data['slide_startstop']; ?>,      // If true, builds the start/stop button 
            toggleArrows        : <?php echo $data['slide_toggle_arrows']; ?>,     // If true, side navigation arrows will slide out on hovering & hide @ other times 
            toggleControls      : <?php echo $data['slide_toggle_controls']; ?>,     // if true, slide in controls (navigation + play/stop button) on hover and slide change, hide @ other times 
            startPanel          : <?php echo $data['slideshow_start_from']; ?>,
            autoPlay            : <?php echo $data['slideshow_pause']; ?>,     // If true, the slideshow will start running; replaces "startStopped" option 
            autoPlayLocked      : <?php echo $data['slideshow_user_pause']; ?>,     // If true, user changing slides will not stop the slideshow 
            autoPlayDelayed     : false,     // If true, starting a slideshow will delay advancing slides; if false, the slider will immediately advance to the next slide when slideshow starts 
            pauseOnHover        : <?php echo $data['slideshow_hover_pause']; ?>,      // If true & the slideshow is active, the slideshow will pause on hover 
            stopAtEnd           : <?php echo $data['slideshow_endstop']; ?>,     // If true & the slideshow is active, the slideshow will stop on the last page. This also stops the rewind effect when infiniteSlides is false. 
            playRtl             : <?php echo $data['slideshow_direction']; ?>,     // If true, the slideshow will move right-to-left 
            resumeOnVideoEnd    : true,      // If true & the slideshow is active & a supported video is playing, it will pause the autoplay until the video is complete 
            addWmodeToObject    : "opaque",
            onSlideBegin: function(e,slider) {
                // keep the current navigation tab in view
                slider.navWindow( slider.targetPage );
            }
        });
        // Videos on click grid and list style
        var animateSpeed = 500; 
        jQuery("#layout-controls a").click(function(){
            var curClass = jQuery('#videos').attr('class');
            var newClass = jQuery(this).attr('class');
            jQuery('#videos').fadeOut(animateSpeed,function(){
                jQuery('#videos').removeClass(curClass,animateSpeed);
                jQuery('#videos').addClass(newClass,animateSpeed);          
            }).fadeIn(animateSpeed);                        
            return false;       
        });
        jQuery("#cw-layout-controls a").click(function(){
            var curClass = jQuery('#cw-videos').attr('class');
            var newClass = jQuery(this).attr('class');
            jQuery('#cw-videos').fadeOut(animateSpeed,function(){
                jQuery('#cw-videos').removeClass(curClass,animateSpeed);
                jQuery('#cw-videos').addClass(newClass,animateSpeed);           
            }).fadeIn(animateSpeed);                        
            return false;       
        });
        //Validate contact form
        jQuery('#contactform').validate();
        //Slow scroll to comments area
        var commentTopPosition = jQuery('#comments').offset().top;
        // When #comment-scroll is clicked
        jQuery('#comment-scroll').click(function(){
            // Scroll down to 'commentTopPosition'
            jQuery('html, body').animate({scrollTop:commentTopPosition}, 'slow');
            // Stop the link from acting like a normal anchor link
            return false;
        });
        jQuery(".vf-table tr:even").addClass("even");
        jQuery(".vf-table tr td").css({'border-left': '1px solid <?php $borders ?>', 'border-right': '1px solid <?php $borders ?>'});
        jQuery(".vf-table tr th").css({'background': '<?php $borders ?>'});
    });

代码的开头是我在最新主题上使用的anythingslider,代码末尾是jquery代码,用于在主题中为我的表添加css样式。

更改我之前在不同主题和不同js文件中使用的表格样式的代码。但由于某种原因,它不适用于这一个。当我使表格边框工作时,任何事情都不起作用,如果我做任何事情,其他代码不起作用。

我试图分别为每个代码创建.js文件并将其包含在主题中,我试图包含来自php文件的代码,我试图直接在头文件中包含代码我试图添加jquery没有冲突我是尝试$而不是jQuery,但没有一个工作。从这里我没有看到我的代码中的任何错误。有人可以更聪明地向我解释我错过了什么,所以我的代码不能用于此。

1 个答案:

答案 0 :(得分:1)

好的,我发现了问题所在。

在禁用评论的网页上,没有#comments div,所以

var commentTopPosition = jQuery('#comments').offset().top;

jQuery休息。

以及它破碎后的一切。我只是对我的评论php文件稍作修改,现在它可以正常工作。