Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/413.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript jQuery函数在本地无法工作_Javascript_Jquery_Localhost_Pug_Addclass - Fatal编程技术网

Javascript jQuery函数在本地无法工作

Javascript jQuery函数在本地无法工作,javascript,jquery,localhost,pug,addclass,Javascript,Jquery,Localhost,Pug,Addclass,我用jQuery为一个站点创建了两个函数。这是一个固定的标题和一个平滑的滚动。广泛使用和良好记录。对于fixed header,我首先将最基本的内容存储在变量中,然后存储函数本身以执行它。 JavaScript jQuery 以下部分包装在$window.load中 HTML翡翠 问题 事实上,…根本没有问题…它的行为就像我想要的那样。事实上,大约一周前,这对我来说非常有效。 但是: 从昨天开始,在当地工作时,奇怪的事情发生了: “act”功能不会在我的系统的任何浏览器中执行。 平滑滚动功

我用jQuery为一个站点创建了两个函数。这是一个固定的标题和一个平滑的滚动。广泛使用和良好记录。对于fixed header,我首先将最基本的内容存储在变量中,然后存储函数本身以执行它。

JavaScript jQuery 以下部分包装在$window.load中

HTML翡翠 问题 事实上,…根本没有问题…它的行为就像我想要的那样。事实上,大约一周前,这对我来说非常有效。 但是: 从昨天开始,在当地工作时,奇怪的事情发生了:

“act”功能不会在我的系统的任何浏览器中执行。 平滑滚动功能不会在Chrome或Safari中启动。我想 这与没有执行“act”功能有关。 jQuery本身工作得很好,因为我确实首先执行了一个.removeClass,它可以在see fiddle中工作,而且我还尝试调试只在所有div中添加一些随机类,这解决了w/o问题。 没有控制台错误。 我反复检查了.jade文件、编译的.html文件和源代码中的拼写和打字错误,并将其与我的小提琴进行了来回比较。代码是相同的。。。 有关我的设置的更多详细信息:

用于编译的代码包2.1.1正常 用Jade编写的HTML编译好了吗 页面底部$window.load中包装的JavaScript 在OSX 10.9.4上设置本地主机 在Chrome 36、Safari 7、FF 31和Opera 23中测试 在我的虚拟机上使用Windows 7和IE 11测试了小提琴,这很正常 在我的带有Windows 7和IE 11的虚拟机上以独立方式测试了该页面,但与上面的测试结果不同
这让我快发疯了。我知道很难说出其他人的本地主机上发生了什么,但我希望你们中的一些人对这可能是什么有一个想法。如果你想要更多的细节,请告诉我,我会尽快完成。谢谢。

您是否尝试过添加一些console.log调用来验证例如sec是否真的正确初始化了?嗯……sec、nav、anc和pos的数组都很好,但是console.logact打印了一个emtpy函数act我想这看起来不应该是这样的?是的,这似乎可疑。如果你的代码看起来真的像这样,并且没有错误报告,那么没有明显的原因会发生这种情况。你有什么样的本地主机?妈妈?我将你的东西从小提琴复制粘贴到文件中,并使用mamp在我自己的本地主机上运行,没有问题。你试过那样的东西吗?不过我对玉一无所知,所以我不能对此发表评论。
var win = $(window),
    doc = $(document),
    sec = $('section'),
    nav = $('nav'),
    anc = $('nav a'),
    pos = nav.offset().top,
    arr = sec.map(function() { // Fill array with top offsets from section
                return $(this).offset().top;
          }).get(),
    act = function() { // Make function to add/remove active class
                var t = win.scrollTop();
                t > pos ? nav.addClass('sticky')
                : nav.removeClass('sticky'),
                $.each(arr, function(i, val) {
                    (t >= val && t < (val + sec.eq(i).outerHeight(true))) ? anc.eq(i-1).addClass('wow')
                    : anc.eq(i-1).removeClass('wow')
                })
          }; // Variables end
win.scroll(act) // Execute sticky function
var $root = $('html, body');
$('a').click(function() {
    var href = $.attr(this, 'href');
    $root.animate({
        scrollTop: $(href).offset().top
    }, 800);
    return false;
});
body.preload

    section#id1
        h1 someHeadline
        nav
            a(href='#id1') linkName
            a(href='#id2') linkName
            ...

    section#id2
        moreContent

    section#id3
        evenMoreContent

    ...