article-type-three.js 2 KB
/**
 * 类型3文章
 * @author: xuqi(qi.xu@yoho.cn)
 * @date;2015/3/30
 */
var $ = require('jquery'); 

/**
 * 初始化$事件并默认选中列表第一项
 */
exports.init = function() {
    $(function() {
        var container = $('.article-type-three'),
            thumbContainer = container.find('.thumb-container'),
            prodList = container.find('.prod-list'),
            curItem, //当前focus搭配项
            prevItem, //上一次focus的搭配项
            curList, //当前focus搭配项对应推荐列表
            prevList; //上一次focus的搭配项对应的列表

        //点击分类,显示分类下推荐商品列表
        thumbContainer.delegate('li', 'click', function() {
            var index;
            curItem = $(this).addClass('focus');
            index = curItem.index();
            if (prevItem) {
                prevItem.removeClass('focus');
            }
            prevItem = curItem;

            curList = prodList.find('.prod:eq(' + index + ')').removeClass('hide');
            if (prevList) {
                prevList.addClass('hide');
            }
            prevList = curList;
        });

        //默认选中第一个
        thumbContainer.find('li:first-child').click();

        //scroll时控制列表的位置
        $(document).scroll(function() {
            var sTop = $(this).scrollTop(),
                cur,
                parent;
            thumbContainer.each(function() {
                var pNode = $(this).parent('.article-type-three');
                if (sTop > pNode.offset().top) {
                    cur = $(this);
                    parent = pNode;
                    return;
                } else {
                    $(this).removeClass('fixed');
                }
            });
            if (cur) {
                if (sTop < parent.offset().top + parent.height()) {
                    cur.addClass('fixed');
                } else {
                    cur.removeClass('fixed')
                }
            }
        });
    });
};