jQuery ScrollTo不会工作

时间:2015-09-02 10:29:11

标签: jquery magento

下午好, 我正在尝试使用Magento CMS进行jQuery scrollto功能。

我使用以下HTML结构创建了一个页面(引用此小提琴http://jsfiddle.net/VPzxG/

    function goToByScroll(id){
      // Reove "link" from the ID
    id = id.replace("link", "");
      // Scroll
    $('html,body').animate({
        scrollTop: $("#"+id).offset().top},
        'slow');
}

$("#sidebar > ul > li > a").click(function(e) { 
      // Prevent a page reload when a link is pressed
    e.preventDefault(); 
      // Call the scroll function
    goToByScroll($(this).attr("id"));           
});

我加载页面后得到的是一个firebug错误

  

TypeError:$(...)为空

     

$(" #sidebar> ul> li> a")。click(function(e){

如果我点击任何菜单而不是滚动到正确的ID,它会加载magento主页。 例如,如果我点击第一个链接" auck"它加载http://www.magentoscrolltest.dev/#

据我所知,就像Magento CMS在我的脚本中没有识别jQuery,但我不知道如何继续进行。

提前感谢任何建议

1 个答案:

答案 0 :(得分:1)

Magento使用Prototype,它也使用$。您必须使用带有noConflict的jQuery或写入jQuery而不是$符号。

如果你想使用noConflict尝试使用(这个例子意味着从现在开始你将不得不使用$j):

var $j = jQuery.noConflict(); 

$j(document).ready(function(){
    $j("#test").css("padding","10px");
});