localscroll活动链接网址识别

时间:2013-01-28 12:25:33

标签: javascript jquery

通过localscroll和scrollto我建立了一个水平滑动页面(Environment)也为网址添加了哈希值。示例:当从localScroll单击导航中的链接时,它会在URL中添加哈希值(index.html #media)。

现在通过Localscroll没有有效的链接支持,我想添加它并在此处找到一些解决方案:Stackoverflow

我很高兴,但后来我尝试重新加载页面,当用户是,例如在媒体部分,没有支持识别网址,它不会将选定的类添加到当前的导航链接在网址中选择。

所以我做了更多研究,发现该网站:Website

很棒,但它对我的水平设置没有用。 我几乎没有开始我的javascript知识,我甚至根本不知道如何jquery所以我用我的逻辑修改了脚本并且到目前为止:

我添加了这个类,即使我通过鼠标滚轮滚动它很好地将类添加到所有导航链接。但是:它不会删除它们。

<script style="text/javascript">
    $(function(){
        var sections = {},
            _width   = $(window).width(),
            i        = 0;

        // Grab positions of our sections 
        $('.section').each(function(){
            sections[this.name] = $(this).offset().left;
        });

        $(document).scroll(function(){
            var $this = $(this),
                pos   = $this.scrollLeft();

            for(i in sections){
                if(sections[i] > pos && sections[i] < pos + _width){
                    $('#nav ul li a').removeClass('selected');
                    $('#nav_' + i).addClass('selected');
                }  
            }
        });
    });

    $(".scroll").click(function(event){
        event.preventDefault();
        var full_url = this.href;
        var parts = full_url.split("#");
        var trgt = parts[1];
        var target_offset = $("#"+trgt).offset();
        var target_top = target_offset.left;
        $('html, body').animate({scrollLeft:target_top}, 800);
    });
</script>

如何更新链接以删除所选类?

编辑:我想我很亲密 我认为它需要改变标题

if(sections[i] > pos && sections[i] < pos + _width)

将“已选择”类分配给当前查看的幻灯片需要进行哪些更改

0 个答案:

没有答案