Javascript时间线问题

时间:2015-06-25 08:16:46

标签: javascript jquery html css dynamic

创建一个从左到右滚动的时间轴..在控制台中运行此js并返回以下错误

未捕获的ReferenceError:选择

$('a.next').click(function () { selector.children('.dates-bar').children('a.next').click(function(){
                var actual_scroll = scroll_count;
                var c = selector.children('.dates-bar').children('a:not(.prev, .next, .noevent):visible()').length
                if(scrolled + scroll_count >= c)
                    actual_scroll = (c - scrolled)-1

                if(parseInt(selector.children('.dates-bar').children('a:not(.prev, .next, .noevent):visible():eq(0)').css('width'))*actual_scroll > selector.children('.dates-bar').width())
                    while(parseInt(selector.children('.dates-bar').children('a:not(.prev, .next, .noevent):visible():eq(0)').css('width'))*actual_scroll > selector.children('.dates-bar').width() && actual_scroll > 1)
                        actual_scroll -= 1;

                var a = (-1)*actual_scroll*parseInt(selector.children('.dates-bar').children('a:not(.prev, .next, .noevent):visible():eq(0)').css('width'));
                selector.children('.dates-bar').children('a:not(.prev, .next, .noevent):visible():eq(0)').animate({marginLeft: '+=' + String(a)+ 'px'}, scroll_time)
                scrolled += actual_scroll;

                current_month = new Date(selector.children('.dates-bar').children('a:not(.prev, .next, .noevent):visible():eq(' + String(scrolled) + ')').attr('data-date')).getMonth()

                selector.children('.month-year-bar').children('.month').children('span').text(month[current_month])
            }) });

非常感谢任何帮助。谢谢。

1 个答案:

答案 0 :(得分:0)

自定义jQuery函数$.fn.jflatTimeline=中有一个错误,您忘记使用jQuery对象调用IIFE(立即调用函数表达式)。

Ben Alman

更多关于IIFE的信息

我已更新您的代码,如下所示

(function ($) {
   $.fn.jflatTimeline = function (options) {
     ...
   }
})(jQuery); //calling the IIFE with jQuery object 

以下是JSFiddle,在控制台中没有任何错误。

我希望您现在可以继续编码。