试图让我的点击按钮始终显示结果,而不仅仅是在点击时

羊绒

现在我有一个单击按钮(或“喜欢”按钮,它是一个名为 .download png 的图像心脏),它仅在您单击时显示单击按钮结果编号计数器。我试图让按钮一直显示结果,不仅仅是当你点击它时,而且在点击时仍然在计数器上增加一个。这是我目前在标题中的代码:

<script>
function clickCounter() {
    if(typeof(Storage) !== "undefined") {
        if (localStorage.firstButtonCount) {
            localStorage.firstButtonCount = Number(localStorage.firstButtonCount)+1;               
        } else {
            localStorage.firstButtonCount = 1; 
        }
        document.getElementById("result").innerHTML = localStorage.firstButtonCount; 
    } else {
        document.getElementById("result").innerHTML = "Sorry, your browser does not support web storage...";
    }

}
</script>

然后是正文代码:

<p>
    <button type="button" onclick="clickCounter()">
        <div class="number" id="result"></div>
        <img src="download.png" width="50px" height="auto class="clickCounter()" type="button alt="Like"/>
    </button>
</p>

我不确定我做错了什么,但如果有人能告诉我如何始终显示结果,那就太棒了!

Daggie Blanqx - 道格拉斯·姆旺吉

请注意 :

要获取 localStorage 中的值,请使用 getItem 方法。

要在 localStorage 中添加值,请使用 setItem 方法。

有关更多信息,请参阅本文https://www.taniarascia.com/how-to-use-local-storage-with-javascript/

用下面的代码替换您的代码:

<!DOCTYPE html>
            <html lang="pt-br">
            <meta charset="utf-8" />

            <head>
                <title>Vote</title>

            </head>

            <body>
                <p>
                    <button type="button" onclick="clickCounter()">
                        <div class="number" id="result"></div>
                        <img src="https://cdn4.iconfinder.com/data/icons/like-18/32/459-01-512.png" width="50px" height="auto" type="button" alt="Like" />
                    </button>
                </p>
                <script type="text/javascript">
                    var resultElement = document.getElementById('result');

                    function updateResult() {

                        resultElement.innerText = parseInt(localStorage.getItem('firstButtonCount')) || 0;;

                    }

                    function vote() {
                        // body...
                        newCount = parseInt(localStorage.getItem('firstButtonCount')) + 1 || 0 + 1;

                        localStorage.setItem('firstButtonCount', newCount);

                    }

                    function clickCounter() {
                        if (typeof(Storage) !== "undefined") {

                            /*
                            to get a value in localStorage ,  you use the method getItem
                            to add a value in localStorage , you use the method setItem
                            */

                            vote();
                            updateResult();

                        } else {
                            document.getElementById("result").innerHTML = "Sorry, your browser does not support web storage...";
                        }
                    }

                    updateResult();
                </script>
            </body>

            </html>

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

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

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何在Jupyter中显示完整的输出,而不仅仅是最后的结果?

当我移动鼠标时,所有子弹都在移动,而不仅仅是被射击

显示所有Elasticsearch聚合结果/存储桶,而不仅仅是10

点击的所有元素都会改变,而不仅仅是目标对象

默认情况下,让jQuery DataTables提交所有行,而不仅仅是在搜索时显示的行

反应点击事件冒泡“横向”,而不仅仅是“向上”

如何使可点击区域应用于整个Div,而不仅仅是标签?

列表中的导航菜单。如何使整个li成为可点击的链接,而不仅仅是文本

删除Brightway方法,而不仅仅是注销

Python获取选定的单选按钮的文本/标签名称,而不仅仅是值

不仅仅是事件触发相同的方法

为什么我整个div都是可点击的,而不仅仅是链接?

收到的不仅仅是删除事件的ID?

始终显示bootstrap-datepicker,而不仅仅是显示焦点

Redis-不仅仅是键查询

写的不仅仅是“你好”

QComboBox:我们能否使整个组合框可单击,而不仅仅是下拉按钮(箭头)本身?

如何显示所有结果,而不仅仅是代表计算器中的一个

在页面加载时显示DIV,而不仅仅是下拉列表的“更改中”

tvOS:具有锁定标题的<grid>始终可见(不仅仅是突出显示)

覆盖范围和鼻子显示了来自Django的文件,而不仅仅是我的测试

用任何手势关闭UIPopoverPresentationController,而不仅仅是点击

函数返回 json 而不仅仅是值

如何在按钮的任何位置悬停时更改按钮的文本颜色,而不仅仅是文本?

在实现我的 api 时,我希望它能够以 xml 格式查看。不仅仅是 JSON

引用类型而不仅仅是数字

ClojureScript:如何访问(不仅仅是打印)HTTP GET 请求的结果

删除按钮删除所有子项,而不仅仅是带有键的子项

我怎样才能获得其他项目而不仅仅是在 jquery 中点击第一个项目