当包含到达窗口中心的对象时,放大一个对象 - jquery?

时间:2012-11-16 16:45:25

标签: jquery

我发布了一个小提琴。 http://jsfiddle.net/HWzz3/3/ 情况就是这样。我想在窗口垂直中心时缩放或缩放容器。当它不在那个位置或滚动到那个位置时回到原来的状态。用jquery可以吗?

<div id="container">My content</div>

我会尝试放大中心,当离开中心时缩小。有什么想法或帮助吗?

非常感谢你。

1 个答案:

答案 0 :(得分:1)

jsFiddle demo

var contPos = $('#container').position().top;
var conthH = $('#container').height()/2;

$(window).on('scroll resize', function(){
    var scr = $(this).scrollTop(),
        winH = $(this).height()/2,
        curr = Math.abs((scr+winH)-(contPos+conthH)),  
        size = (curr<150)  ?  500:200   ;
    $('#container').stop(1).animate({width:size, height:size, marginTop:-size/2},300);   
});

您会看到size = (curr<150) ? 500:200 ;
150表示px中的“屏幕中心区域”可以执行某些操作(您可以根据需要使用该值) 白色500200是您要应用的 MAX MIN 尺寸。