2014-11-04 99 views
0

我试图将此FAQ template集成到Magento商店的“1列布局”。jQuery显示/隐藏slideToggle不工作

显示/隐藏切换无法按预期工作,只要持续时间(400)结束,它就会隐藏起来。 您可以在现场检查:http://nutrija.com/faq

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

var faqTrigger = $('.cd-faq-trigger'), 

    //show faq content clicking on faqTrigger 
    faqTrigger.on('click', function(event){ 
     event.preventDefault(); 
     $(this).next('.cd-faq-content').slideToggle(400).end().parent('li').toggleClass('content-visible'); 
    }); 

} 

我试图改变一些参数,但失败了,请帮助。

+1

,我们在您贴出代码2个语法错误。这是你目前的代码吗? – undefined 2014-11-04 10:11:52

+0

Full main.js文件在这里:http://codepad.org/vDQAxte5 – 2014-11-04 10:20:13

+0

静态html在Magento之外运行良好。 http://nutrija.com/static-faq.html – 2014-11-04 13:13:06

回答

0

执行content-visible类切换中的slideToggle回调

var faqTrigger = $('.cd-faq-trigger'), 

//show faq content clicking on faqTrigger 
faqTrigger.on('click', function(event){ 
     event.preventDefault(); 
     $(this).next('.cd-faq-content').slideToggle(400, function(){ 
       //Add toggle class here 
       faqTrigger.parent('li').toggleClass('content-visible'); 
     }); 
    }); 

} 
0

我有固定的问题,这个问题是与Magento的整合jQuery的

解决方案:

使用jQuery则必须在确保它使用'noConflict'模式。为此,请添加:

var $ j = jQuery.noConflict();

到您的jQuery脚本的末尾。

现在,改变任何jQuery代码如下。如果您有:

//show faq content clicking on faqTrigger 
faqTrigger.on('click', function(event){ 
    event.preventDefault(); 
    $(this).next('.cd-faq-content').slideToggle(400).end().parent('li').toggleClass('content-visible'); 
}); 

}

它改成:

//show faq content clicking on faqTrigger 
faqTrigger.on('click', function(event){ 
    event.preventDefault(); 
    $f(this).next('.cd-faq-content').slideToggle(400).end().parent('li').toggleClass('content-visible'); 
}); 

}