繁体   English   中英

JavaScript意外结束输入错误

[英]Unexpected End of Input Error on javascript

我真的很困惑我收到的输入错误的结尾。 我将其隔离为以下代码。 当我删除代码时,错误消失了。

有人看到错误可能与什么有关吗? 除了突出显示结束脚本标记之外,控制台没有指向任何特定内容。

<script>
$(document).ready(function() {

    //Arrow Down
    $('#arrowDownWrap').click(function() {
        $('html, body').animate({
            scrollTop: $('#home-section2').offset().top -140}, 1000);
    });

    //Phone Img slide
    let last_known_scroll_position = 0;
    let ticking = false;

    function doSomething(scroll_pos) {
        // Do something with the scroll position
        document.querySelector('#homeBoxGridRight img').style.transform = 'translateX(-' + (scroll_pos * 0.1) + '%)';
        document.querySelector('#homeBoxGridRight img').style.transform += 'translateY(-50%)';
    }

    window.addEventListener('scroll', function(e) {
        last_known_scroll_position = window.scrollY;

        if (!ticking) {
            window.requestAnimationFrame(function() {
                doSomething(last_known_scroll_position);
                ticking = false;
            });

            ticking = true;
        }
    });
});
</script>

此代码有错误:

$('#arrowDownWrap').click(function() {
    $('html, body').animate({
        scrollTop: $('#home-section2').offset().top -140}, 1000);
});

这是解决方案:

$('#arrowDownWrap').click(function() {
    $('html, body').animate({
        scrollTop: $('#home-section2').offset().top -140}, 1000);
    }); // <-- this line is missing
});

在脚本标记的末尾有两个关闭函数。 删除一个并将其添加到“ arrowDownWrap”函数之后,

您的代码将如下所示:

<script>
$(document).ready(function() {
//Arrow Down
  $('#arrowDownWrap').click(function() {
      $('html, body').animate({
         scrollTop: $('#home-section2').offset().top -140}, 1000);
      });
   });

//Phone Img slide
let last_known_scroll_position = 0;
let ticking = false;

function doSomething(scroll_pos) {
    // Do something with the scroll position
     document.querySelector('#homeBoxGridRight img').style.transform =   'translateX(-' + (scroll_pos * 0.1) + '%)';
    document.querySelector('#homeBoxGridRight img').style.transform += 'translateY(-50%)';
}

window.addEventListener('scroll', function(e) {
    last_known_scroll_position = window.scrollY;

    if (!ticking) {
        window.requestAnimationFrame(function() {
            doSomething(last_known_scroll_position);
            ticking = false;
        });

        ticking = true;
      }
  });

</script>

嗨,您在$ arrowDownWrap之后缺少结束标记,而是在脚本标记的上方两次使用了结束标记。 祝你好运了。

           window.addEventListener('scroll', function(e) {
    last_known_scroll_position = window.scrollY;

    if (!ticking) {
        window.requestAnimationFrame(function() {
            doSomething(last_known_scroll_position);
            ticking = false;
        });

        ticking = true;
    }
});
});//first remove this part here . It is repeated above which is giving you the error. IDE finds two endtags at the same point .

其次,在此处添加已删除的结束标记并关闭您错过的功能。 瞧。 祝好运

         $('#arrowDownWrap').click(function() {
$('html, body').animate({
    scrollTop: $('#home-section2').offset().top -140}, 1000);
}); // <-- this  is where you missed it
});

您没有正确关闭该功能,而错过了该功能结束时的花括号,圆括号和分号。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM