Почему PhpStorm не показывает ошибку в коде?

202
10 декабря 2016, 10:32

Всем привет

Есть такая функция:

<script>
    $(window).on('hashchange', function(){
        var id = location.hash, targ=$(id+'+section.module'); //запоминаем в targ нужный блок
        if (!targ[0]) return // выходим, если "левый" хэш, например, ввели вручную
        var top = targ.offset().top;
        $(".header__list a").removeClass(('active'));
        $('.header__list a[href="'+id+'"]').addClass('active');
    }
    //
    // if (windowRes <= 1024) {
    //  $('body,html').animate({scrollTop: top})
    // }
    $('body,html').animate({
        scrollTop: top + 3
    }, 1500);
    });
    }).on('load', function(){$(window).hashchange()}) // переходим к нужному разделу, если, напрмер, ссылку в новой вкладке открыли
</script>

Веб-инспектор кричит об ошибке: joxi.ru/4AkzJvnHBlen2q

SyntaxError: missing ) after argument list
Answer 1

Учитывая ваш сриншот, я пришел к выводу, что все нужные code inspections у вас активны. У себя мне не удалось воспроизвести проблему отключением каких бы то ни было проверок.

Я нашел только один способ добиться такого, как у вас внешнего вида кода - убрав цветное подчеркивание в code style. Проверьте эти настройки у себя: https://goo.gl/zL4mt1 (Editor -> Colors & Fonts -> General -> Errors and Warnings -> Error). Они должны быть такими же. Если галочек справа нет или цвет не контрастный - получается ситуация как у вас.

Если это не поможет - мое мнение, что проблема в глюке шторма или плагинов.

Верный код, в вашем случае, будет примерно таким, если я правильно его понял:

<script>
    $(window).on('hashchange', function(){
        var id = location.hash,
            targ = $(id+'+section.module'); //запоминаем в targ нужный блок
        if (!targ[0]) return; // выходим, если "левый" хэш, например, ввели вручную
        var top = targ.offset().top;
        $(".header__list a").removeClass(('active'));
        $('.header__list a[href="'+id+'"]').addClass('active');
        //
        // if (windowRes <= 1024) {
        //  $('body,html').animate({scrollTop: top})
        // }
        $('body,html').animate({
            scrollTop: top + 3
        }, 1500);
    }).on('load', function(){$(window).trigger('hashchange')}); // переходим к нужному разделу, если, напрмер, ссылку в новой вкладке открыли
</script>

Для меня осталось загадкой, откуда там скобки в середине блока кода и странные }) в конце.

READ ALSO
Проблема при ширине viewport 320px

Проблема при ширине viewport 320px

Появился странный отступ при ширине viewport 320pxПодскажите в чем проблема и где его найти?

220
Проблема с slideToggle [закрыто]

Проблема с slideToggle [закрыто]

https://youtube/NaqEx12tz_g Видео с проблемой!

231
Overflow: hidden + line-height — как подружить?

Overflow: hidden + line-height — как подружить?

Всем привет столкнулся с проблемой, есть верстка, 3 дива, на 1 из них overflow: hidden, из-за чего едет базовая линия контейнеракак выровнять блоки...

219
Как делать активными пункты меню при прокрутке страницы?

Как делать активными пункты меню при прокрутке страницы?

Сайт одностраничный, при нажатии ссылки переходит на определенную позицию на страницеИ никак не получается сделать ссылку меню активной...

294