Console.log根本不工作

egr*_*103 28 javascript debugging console google-chrome-devtools

一堆代码无法正常工作,我正在尝试确定问题所在,但未console.log()在Chrome Dev工具中记录任何结果,我是否正确执行?

$(window).scroll(function() {
       $('section').each(function(){
            var id='#'+$(this).attr('id'),
                off=$(id).offset().top,
                hei=$(id).height(),
                winscroll=$(window).scrollTop(),
                dif=hei+off-($(window).height());

            if (winscroll >= off && winscroll<=dif) {
                console.log('first broken');
                $(id+' .sticky').removeClass('abs').addClass('fix');
            } else if (winscroll > dif){
                console.log('second broken');
                $(id+' .sticky').removeClass('fix').addClass('abs');
            } else {
                console.log('third broken');
                $(id+' .sticky').removeClass('fix abs');
            }   });
        });
Run Code Online (Sandbox Code Playgroud)

编辑完整代码添加

$(document).ready(function() {

    // If a browser supports 3D transforms use the fancy menu if it doesn't, use standard accordion menu instead
    if($('html').hasClass('csstransforms3d')){

        $( "#mp-menu" ).removeClass( "snap-drawers" ).addClass( "mp-menu" );

        $('nav ul li ul').css('border-bottom','1px solid rgba(255, 255, 255, .05)');
        $('nav ul li ul').css('background','none');

        // Insert elements where necessary to create the right structure
        $('#mp-menu').wrapInner('<div class="mp-level" />');
        $('#mp-menu').find('li > ul').wrap('<div class="mp-level" />');

        $("#mp-menu ul li .mp-level").prepend(function () {
            return '<span class="menu-title">' + $(this).prev().text() + '</span> <a class="ico mp-back" href="#">Back</a>';
        });

        // load in necessary JS files
        $.getScript('http://176.32.230.2/baodev.com/cjo/wp-content/themes/CJO/js/multi-level-menu.js');

    } else {

        // load in necessary JS files
        $.getScript( "http://176.32.230.2/baodev.com/cjo/wp-content/themes/CJO/js/jquery.navgoco.min.js", function() {
            $("#demo1").navgoco({accordion: true});
        });

        $.getScript( "http://176.32.230.2/baodev.com/cjo/wp-content/themes/CJO/js/snap.min.js", function() {

            // Snapper settings     
            var snapper = new Snap({
              element: document.getElementById('scroller'),
              disable: 'right',
              maxPosition: 291
            });

            var addEvent = function addEvent(element, eventName, func) {
                if (element.addEventListener) {
                return element.addEventListener(eventName, func, false);
              } else if (element.attachEvent) {
                  return element.attachEvent("on" + eventName, func);
              }
            };

            // Toggle button
            addEvent(document.getElementById('trigger'), 'click', function(){
                if( snapper.state().state=="left" ){
                    snapper.close();
                    $( ".menu-trigger" ).removeClass( "active" );
                } else {
                    snapper.open('left');
                    $( ".menu-trigger" ).addClass( "active" );
                }
            });

            addEvent(document.getElementById('scroller'), 'click', function(){
                if( snapper.state().state=="left" ){
                    $( ".menu-trigger" ).removeClass( "active" );
                }
            });

            /* Prevent Safari opening links when viewing as a Mobile App */
            (function (a, b, c) {
              if(c in b && b[c]) {
                  var d, e = a.location,
                      f = /^(a|html)$/i;
                  a.addEventListener("click", function (a) {
                      d = a.target;
                      while(!f.test(d.nodeName)) d = d.parentNode;
                      "href" in d && (d.href.indexOf("http") || ~d.href.indexOf(e.host)) && (a.preventDefault(), e.href = d.href)
                  }, !1)
              }
            })(document, window.navigator, "standalone");

        });

    } // end if

    fitHeight();

    $(window).scroll(function() {
        $('section').each(function(){
            var id='#'+$(this).attr('id'),
                off=$(id).offset().top,
                hei=$(id).height(),
                winscroll=$(window).scrollTop(),
                dif=hei+off-($(window).height());

           console.log('msj');

            if (winscroll >= off && winscroll<=dif) {
                $(id+' .sticky').removeClass('abs').addClass('fix');
            } else if (winscroll > dif){
                $(id+' .sticky').removeClass('fix').addClass('abs');
            } else {
                $(id+' .sticky').removeClass('fix abs');
            }
        });
     });

});

// Trigger FitHeight on browser resize
$(window).resize(fitHeight);
Run Code Online (Sandbox Code Playgroud)

编辑

完整代码的某些部分(上面)引用其他JS文件,并且在使用这些文件运行时代码不返回任何错误.排除故障后,我在滚动功能之前看到控制台消息,但是在滚动功能中我没有看到控制台消息.

fitHeight();

    console.log('About to bind scroll effects'); // I SEE THIS MESSAGE

    $(window).scroll(function() {

        console.log("scroll bound, now loop through sections"); //BUT NOT THIS ONE

        $('section').each(function(){
Run Code Online (Sandbox Code Playgroud)

Jam*_*lly 55

听起来你已隐藏JavaScript日志或指定你只想看错误或警告.打开Chrome的开发者工具,然后转到控制台标签.在底部,您需要确保选中JavaScript,并确保选中"全部","日志"或"调试".

示例截图

在上图中,我选择了JavaScript,网络,日志记录,CSS和其他选中的"全部".


另一个潜在的问题可能是您的$(window).scroll()函数未包含在.ready()函数中(如此处所述):

$(document).ready(function() {
    $(window).scroll(function() {
        ...
    });
});
Run Code Online (Sandbox Code Playgroud)

将代码粘贴到JSFiddle并提供一些虚拟内容时,您的代码运行得非常好:JSFiddle演示.


编辑:

这个问题已被编辑.给出的新代码会引发两个错误:

未捕获的ReferenceError:未定义fitHeight未捕获TypeError:无法读取null的属性'addEventListener'

因此,代码在到达任何console.log调用之前停止执行.


Aye*_*xeM 18

就我而言,所有控制台消息均未显示,因为我在“过滤器”文本框中留下了一个字符串。

通过单击X删除过滤器,如下所示:

在此处输入图片说明

  • 捂脸!几天前我在过滤框中输入了一些内容。今天花了 1 个小时才看到这个答案。谢谢。 (8认同)
  • 这。幸运的是或不幸的是,如果您在选项卡的开发人员控制台上设置了过滤器,则该过滤器将在连续的选项卡及其控制台中继续有效。 (3认同)
  • 我的妈呀!为什么过滤器值不仅在选项卡和控制台上持续存在,而且在关闭/重新打开的实例中也持续存在? (2认同)

小智 8

单击恢复按钮。console.log将开始工作。

在此处输入图片说明


tho*_*mas 7

2021年解决方案

  • 打开开发者工具
  • 导航到“控制台”
  • 很可能“详细”没有被勾选,所以激活它

在此输入图像描述


egr*_*103 6

我觉得这有点愚蠢,但让这成为每个人的教训......确保你瞄准正确的选择器!

基本上控制台没有记录任何东西,因为这个特定的代码片段试图抓住我的窗口的滚动区域,而实际上我的代码设置不同以滚动整个DIV.我一改变了:

$(window).scroll(function() {
Run Code Online (Sandbox Code Playgroud)

对此:

$('#scroller').scroll(function() {
Run Code Online (Sandbox Code Playgroud)

控制台开始记录正确的消息.