jQuery scrollTo()“无法识别的表达式”

Slagjoeyoco

我试图使用答案中说明的方法来创建一个简单的3点菜单,该菜单使用户可以滚动到各个部分。

最终得到以下代码:

的HTML

<body>
    <nav id="nav">
        <ul>
            <li>
                <a class="navLink" href="#home">HOME</a>
            </li>
            <li>
                <a class="navLink" href="#info">INFO</a>
            </li>
            <li>
                <a class="navLink" href="#pics">PICS</a>
            </li>
        </ul>   
    </nav>

    <section id="home">
        <!-- stuff -->
    </section>

    <section id="info">
        <!-- stuff -->
    </section>

    <section id="pics">
        <!-- stuff -->
    </section>
</body>

JS

$('a.navLink').on('click', function(event) {
    event.preventDefault();
    var target = $(this.href);
    if( target.length ) {
        $("html, body").scrollTo(target, { duration: 1000, easing: "linear" });
    }
});

单击三个链接中的任何一个,我最终得到:

Uncaught Error: Syntax error, unrecognized expression:
http://localhost/meckerHP/#whatevervalueinhref

甚至尝试通过根本不使用href属性,而是为每个链接使用id来代替,这确实消除了错误消息,但让我留下了无效链接。

我看不到任何原因导致以上链接的答案中的方法不起作用,因此我们非常感谢您的帮助。

鼓舞

您可以通过从以下位置更改以下行来解决此问题:

var target = $(this.href);

到:

var target = $($(this).attr('href'));

最初的代码行的问题在于,this.href它将返回锚点的完整URL,而不仅仅是hrefHTML中的文字值因此,因此您不能将其用作jQuery选择器。如果您改用$($(this).attr('href'));,则基本上可以估算$("#theHref");出您所期望的结果。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

jQuery scrollTo()“无法识别的表达式”

来自分类Dev

无法识别的表达式:jQuery语法问题

来自分类Dev

jQuery无法识别的表达式[href =#undefined]

来自分类Dev

jQuery语法错误,无法识别的表达式

来自分类Dev

jQuery无法识别的表达式。连接基础

来自分类Dev

jQuery无法识别的表达式错误

来自分类Dev

JQUERY:未捕获的错误:无法识别的表达式

来自分类Dev

jQuery无法识别的表达式。连接基础

来自分类Dev

jQuery无法识别的表达式[href =#undefined]

来自分类Dev

jQuery展开-无法识别的表达式

来自分类Dev

无法识别的表达式:[object Object].class :jquery

来自分类Dev

JQUERY:未捕获的错误:语法错误,无法识别的表达式

来自分类Dev

未捕获的错误:语法错误,jQuery升级后无法识别的表达式

来自分类Dev

jQuery转义选择器无法识别的表达式:[data-route = search \\ / child]

来自分类Dev

jQuery无法识别的表达式包含选择器

来自分类Dev

jQuery选择器错误:无法识别的表达式

来自分类Dev

JQUERY:未捕获的错误:语法错误,无法识别的表达式::nth-child

来自分类Dev

jquery.find()无法识别的正则表达式

来自分类Dev

jQuery无法识别的表达式包含选择器

来自分类Dev

错误:语法错误,无法识别的表达式:#jquery

来自分类Dev

语法错误,jQuery 中无法识别的表达式

来自分类Dev

jquery 版本兼容性问题无法识别的表达式

来自分类Dev

未捕获的错误:语法错误,无法识别的表达式 - JQuery 3.2.1

来自分类Dev

jQuery按名称查找元素(名称带有点),显示语法错误,无法识别的表达式:

来自分类Dev

添加到数组时,从 text() 返回的 jQuery 值导致无法识别的表达式错误

来自分类Dev

jQuery:包含给出的错误:jquery-1.12.3.js:1502未捕获的错误:语法错误,无法识别的表达式:contains(“ sys”)

来自分类Dev

关于:jquery.js:2未捕获的错误:语法错误,无法识别的表达式:#mobile-menu-toggle,#mobile-menu a [href * =#]

来自分类Dev

Bootstrap下拉列表Jquery Uncaught错误:语法错误,表达式无法识别

来自分类Dev

jQuery语法错误,id选择器上的表达式无法识别

Related 相关文章

  1. 1

    jQuery scrollTo()“无法识别的表达式”

  2. 2

    无法识别的表达式:jQuery语法问题

  3. 3

    jQuery无法识别的表达式[href =#undefined]

  4. 4

    jQuery语法错误,无法识别的表达式

  5. 5

    jQuery无法识别的表达式。连接基础

  6. 6

    jQuery无法识别的表达式错误

  7. 7

    JQUERY:未捕获的错误:无法识别的表达式

  8. 8

    jQuery无法识别的表达式。连接基础

  9. 9

    jQuery无法识别的表达式[href =#undefined]

  10. 10

    jQuery展开-无法识别的表达式

  11. 11

    无法识别的表达式:[object Object].class :jquery

  12. 12

    JQUERY:未捕获的错误:语法错误,无法识别的表达式

  13. 13

    未捕获的错误:语法错误,jQuery升级后无法识别的表达式

  14. 14

    jQuery转义选择器无法识别的表达式:[data-route = search \\ / child]

  15. 15

    jQuery无法识别的表达式包含选择器

  16. 16

    jQuery选择器错误:无法识别的表达式

  17. 17

    JQUERY:未捕获的错误:语法错误,无法识别的表达式::nth-child

  18. 18

    jquery.find()无法识别的正则表达式

  19. 19

    jQuery无法识别的表达式包含选择器

  20. 20

    错误:语法错误,无法识别的表达式:#jquery

  21. 21

    语法错误,jQuery 中无法识别的表达式

  22. 22

    jquery 版本兼容性问题无法识别的表达式

  23. 23

    未捕获的错误:语法错误,无法识别的表达式 - JQuery 3.2.1

  24. 24

    jQuery按名称查找元素(名称带有点),显示语法错误,无法识别的表达式:

  25. 25

    添加到数组时,从 text() 返回的 jQuery 值导致无法识别的表达式错误

  26. 26

    jQuery:包含给出的错误:jquery-1.12.3.js:1502未捕获的错误:语法错误,无法识别的表达式:contains(“ sys”)

  27. 27

    关于:jquery.js:2未捕获的错误:语法错误,无法识别的表达式:#mobile-menu-toggle,#mobile-menu a [href * =#]

  28. 28

    Bootstrap下拉列表Jquery Uncaught错误:语法错误,表达式无法识别

  29. 29

    jQuery语法错误,id选择器上的表达式无法识别

热门标签

归档