点击事件后HTML页面不断重新加载

时间:2015-09-01 08:17:48

标签: javascript html

您好我有一个小网站,在点击事件后不断重新加载。我该如何防止这种情况?

PS:我只允许使用纯JS。

HTML

    Cookie Clicker          

</head>
<body>
    <header>
        <h1>Points: </h1>
        <span id="score"></span>
    </header>
    <div class="container">
        <div>
            <a href="" onclick="addPoints(1)">
                <img src="assets/graphics/Friis.png" />
            </a>
        </div>
    </div>

    <script src="assets/scripts/cookieClicker.js"></script>
</body>
</html>


JS

var points = 0,
    score = document.getElementById("score");

function addPoints(increase) {
    console.log('hit');
    points += increase;

    score.innerHTML = '' + points;
};

4 个答案:

答案 0 :(得分:6)

您只能修改您的HTML并且它可以正常运行:

margin-bottom: 5px

有些人这样做:

<a href="javascript:void(0);" onclick="addPoints(1)">

但是这是一个将页面滚动到顶部的锚点。如果您需要通过javascript制作,请搜索<a href="#" onclick="addPoints(1)">

修改

阅读event preventDefault javascript函数:

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/void

了解行为很好。

答案 1 :(得分:2)

您可以只更改href以运行该功能,而不是使用onClick。 例如:

<a href="javascript:addPoints(1);">

答案 2 :(得分:2)

将您的代码更新为:

<a href="" onclick="addPoints(1);return false">

<a href="" onclick="return addPoints(1)">

让你的函数addPoints返回false。这样做的好处是,如果addPoints达到某个级别,你实际上可以让href链接到一个页面。如果addPoints返回true,则链接将用户带到该页面,返回false将使用户保持在当前页面上。

答案 3 :(得分:1)

因为您的代码包含

而发生
   <a href="" onclick="addPoints(1)"> // These Can Reload Same Page
   <a href="#" onclick="addPoints(1)"> // Modify upper code to these code