【问题标题】:Jquery results in error every time function is used每次使用函数时 Jquery 都会出错
【发布时间】:2021-04-18 05:50:39
【问题描述】:

我是 jquery 和 javascript 的新手,所以这可能是一个非常简单的问题。我收到一个我无法理解的错误,每次在我的 .js 文件中运行函数时都会出现该错误。

目前,我的 .js 文件只是将其作为查找问题所在的一种方式:

    $(document).ready(function(){
    $(".title-link").css("color", "#ccc");

    $('.title-link').click(function(){
    var check = "I work";
    alert(check);
    
    });

   });

标题链接更改颜色没有任何问题,因此 .js 文件位于我的 HTML 文件中。我在脚本标签的 HTML 文件中也有我的 jquery 的最新 CDN。 src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"

当我在浏览器上单击带有 title-link 类的元素时,页面只是重新加载 - 或崩溃(?),这是怎么发生的?检查页面时,我看到它从我的 .js 文件切换到 jquery.min.js:formatted 在传递我的函数中的每一行并指向下面的这些行之后:

while ((o = i.handlers[n++]) && !u.isImmediatePropagationStopped())
                    u.rnamespace && !1 !== o.namespace && !u.rnamespace.test(o.namespace) || (u.handleObj = o,
                    u.data = o.data,
                    void 0 !== (r = ((S.event.special[o.origType] || {}).handle || o.handler).apply(i.elem, s)) && !1 === (u.result = r) && (u.preventDefault(),
                    u.stopPropagation()))
            }
            return c.postDispatch && c.postDispatch.call(this, u),
            u.result

为什么会发生这种情况,我该怎么做才能让我的代码按预期运行? ATM 由于每次使用函数时页面都会重新加载,我无法使用我的 javascript 文件。非常感谢您的帮助

编辑:这是 HTML 页面

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<script 
src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"> 
</script>
<script type="text/javascript"  src="./js/tentaJs.js"></script>

<link rel="stylesheet" href="./css/main.css">


<title>Tenta index</title>
</head>


<body>
<div class="container">
    <header>
        <div class="header-top">
            <div class="loggavänster">
                <h1>Kurslitt Lund</h1>
            </div>

                <nav class="navbar">

                    <li><a class="meny-link active" 
 href="index.html">Säljes</a></li>
                    <li><a class ="meny-link" href="buy.html">Köpes</a> 
</li>
                    <li><a class = "meny-link" 
  href="annonce.html">Annonsera</a></li>

                </nav>
        </div>

        <div class="logo">
            <h1>Kurslitteratur köpes</h1>
        </div>

    </header>


    <main>

        <div class = "article">
            <div class="article-container">
                <img src="./images/bok.jpg" alt="bok">
                <p>TITEL: <a href="" class = "title-link">titel</a> </p>
                <p>Pris:</p>
                <p>ISBN:</p>
                <p>Säljare:</p>
                <a href="tel:00000000">Tele: 00000000</a></p>
                <p class = "comment-text">Kommentar från säljare: <br>
                    jag är en kommentar
                </p>
            </div>
        </div>

        <div class = "article">
            <div class="article-container">
            <img src="./images/bok.jpg" alt="bok">
            <p>TITEL</p>
            <p>Pris:</p>
            <p>ISBN:</p>
            <p>Säljare:</p>
            <a href="tel:00000000">Tele: 00000000</a></p>
            </div>
        </div>

        <div class = "article">
            <div class="article-container">
            <img src="./images/bok.jpg" alt="bok">
            <p>TITEL</p>
            <p>Pris:</p>
            <p>ISBN:</p>
            <p>Säljare:</p>
            <a href="tel:00000000">Tele: 00000000</a></p>
            </div>
        </div>

    </main>


    <footer>
        <p>Kurslitt i Lund;</p>
        <p>Email: info@kil.se <br>
            <a href="tel:00000000">Tele: 00000000</a></p>
        </footer>

</div>

</body>

</html>

【问题讨论】:

  • 发布整个代码或sn-p
  • 来自什么? HTML?
  • 您发布的 HTML 标记没有任何 title-link 类元素。
  • 现在它有了正确的 HTML!
  • 您的页面正在重新加载,因为该元素是一个超链接。如果您不想要标准行为 - 离开 - 您需要阻止它:How to stop default link click behavior with jQuery

标签: javascript html jquery


【解决方案1】:

 $(document).ready(function(){
    $(".title-link").css("color", "#ccc");

    $('.title-link').click(function(e){
    e.preventDefault();
    var check = "I work";
    alert(check);
    
    });

   });
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<script 
src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"> 
</script>

<title>Tenta index</title>
</head>


<body>
<div class="container">
    <header>
        <div class="header-top">
            <div class="loggavänster">
                <h1>Kurslitt Lund</h1>
            </div>

                <nav class="navbar">

                    <li><a class="meny-link active" 
 href="index.html">Säljes</a></li>
                    <li><a class ="meny-link" href="buy.html">Köpes</a> 
</li>
                    <li><a class = "meny-link" 
  href="annonce.html">Annonsera</a></li>

                </nav>
        </div>

        <div class="logo">
            <h1>Kurslitteratur köpes</h1>
        </div>

    </header>


    <main>

        <div class = "article">
            <div class="article-container">
                <img src="./images/bok.jpg" alt="bok">
                <p>TITEL: <a href="" class = "title-link">titel</a> </p>
                <p>Pris:</p>
                <p>ISBN:</p>
                <p>Säljare:</p>
                <a href="tel:00000000">Tele: 00000000</a></p>
                <p class = "comment-text">Kommentar från säljare: <br>
                    jag är en kommentar
                </p>
            </div>
        </div>

        <div class = "article">
            <div class="article-container">
            <img src="./images/bok.jpg" alt="bok">
            <p>TITEL</p>
            <p>Pris:</p>
            <p>ISBN:</p>
            <p>Säljare:</p>
            <a href="tel:00000000">Tele: 00000000</a></p>
            </div>
        </div>

        <div class = "article">
            <div class="article-container">
            <img src="./images/bok.jpg" alt="bok">
            <p>TITEL</p>
            <p>Pris:</p>
            <p>ISBN:</p>
            <p>Säljare:</p>
            <a href="tel:00000000">Tele: 00000000</a></p>
            </div>
        </div>

    </main>


    <footer>
        <p>Kurslitt i Lund;</p>
        <p>Email: info@kil.se <br>
            <a href="tel:00000000">Tele: 00000000</a></p>
        </footer>

</div>

</body>

</html>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-04-12
    • 1970-01-01
    • 2016-04-30
    • 2018-09-21
    • 2021-07-27
    • 2021-03-18
    相关资源
    最近更新 更多