2014-10-03 62 views
0

你可以在这里看到http://jsfiddle.net/Stratos123/qywaLszg/我想要做的代码。同位素完美地工作,当你点击图像时,盒子会打开并显示正确的信息,但发生的情况是一旦单击该框,页面将滚动到html页面的顶部,而不是滚动到导航位于红色框下方的位置例。jquery滚动回页首,而不是所需的div

如果我改变了下面的代码

// Portfolio Open and close 
    $(document).ready(function() { 
    $('.portfolio li a').click(function() { 
     var itemID = $(this).attr('href'); 
     $('.portfolio').addClass('item_open'); 

to: 

    // Portfolio Open and close 
    $(document).ready(function() { 
    $('.gallery li a').click(function() { 
     var itemID = $(this).attr('href'); 
     $('.gallery').addClass('item_open'); 

组合打开和完美,但然后关闭ISOTOP不会工作。

任何想法?我已经为此工作了近2周。疯了。

回答

2

我想你想是这样的http://jsfiddle.net/qywaLszg/6/embedded/result/


更新

当您UL清单工作,你需要在调用过滤器

在这里工作http://jsfiddle.net/qywaLszg/9/embedded/result/

$('#filter li a').click(function() { 
     $('#filter li.selected').removeClass('selected'); 
     $(this).parent().addClass('selected'); 
     var selector = $(this).parent().attr('data-filter'); 
     $container.isotope({ 
      filter: selector, 
      animationOptions: { 
       duration: 750, 
       easing: 'linea', 
       queue: false 
      } 
     }); 
     return false; 
    }); 

例如调整班就在CSS

#portfolio{ 
    position: relative; 
} 

添加并在jQuery

$(".portfolio ul li a").click(function() { 
    $('html, body').animate({ 
     scrollTop: $("#top").offset().top 
    }, 400); 
}); 
+0

嗨,这工作perect。任何想法为什么当我将同位素导航打到<! - 开始组合过滤器 - >

<! - - 结束投资组合过滤器 - >它不会工作? – Stratos 2014-10-04 03:28:03

+0

那么你已经改变了你分配过滤器的类。检查更新的答案:)你可以接受答案:) – 2014-10-04 07:04:42

+0

干杯,谢谢你的帮助 – Stratos 2014-10-04 11:13:35

0

我想,这是因为parseInt函数不能在一个字符串

$(".portfolio ul li a").click(function() { 
$('html, body').animate({ 
    scrollTop: parseInt($("#top").offset().top) 
}, 400); 
}); 

此外,在每一次点击的功能,你可以

return false; 
+0

你不需要parseInt。只需使用它像这样scrollTop:$(“#top”)。offset()。顶部 – 2014-10-03 20:39:36