比较localStorage键和任何元素ID,如果相等则向该元素添加类

贝塞洛

我正在尝试为图片库构建书签/收藏夹功能,以便用户可以将某些图片标记为收藏夹(保存到localStorage)。

所以,目前我确实通过调用了每个元素上的一个onClick="addFavorites(this)"函数

function addFavorites(element) {
    var bild = element.id;
    if (localStorage.getItem(bild) === null) {
        localStorage.setItem(bild, bild);
    } else {
        localStorage.removeItem(bild);
    }
}

到目前为止,这个工作正常。现在,我希望对选定的图片也进行视觉标记(尤其是在页面重载时),并且我正在努力寻找解决方案。是否可以将localStorage键与任何元素id进行比较,并favorite在元素相等时将class fe添加到元素中。

也许还有更简单的方法可以解决此问题?

任何帮助或想法都会很棒!

艾罗斯

假设您的图片都有一个识别类,例如"picture"然后,您可能会在页面加载时运行以下内容:

var pictures = document.querySelectorAll(".picture");
pictures.forEach(picture => {
    if (localStorage.getItem(picture.id)) {
        picture.classList.add("favorite");
    }
});

您还需要稍微更改addFavorites:

function addFavorites(element) {
    var bild = element.id;
    if (localStorage.getItem(bild) === null) {
        localStorage.setItem(bild, bild);
        element.classList.add("favorite");
    } else {
        localStorage.removeItem(bild);
        element.classList.remove("favorite");
    }
}

然后,当然,您可以使用favoriteCSS样式来管理的外观

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如果最接近的元素包含字符串,则向该元素添加类

来自分类Dev

如果文本与子元素中的任何文本匹配,请向该子元素添加类?

来自分类Dev

如何从其ID向元素添加类?

来自分类Dev

如果另一个元素为空,如何向该元素添加一个类?

来自分类Dev

为什么我不能向该html元素添加类?

来自分类Dev

向当前元素添加活动类-在多个ID和类之间

来自分类Dev

如何向对象添加元素键和值?

来自分类Dev

向父元素添加类

来自分类Dev

是否可以向Razor元素添加类和样式

来自分类Dev

是否可以向Razor元素添加类和样式

来自分类Dev

在mouseEnter上使用JavaScript向元素添加和删除类

来自分类Dev

如果容器元素的内容比容器元素高,则向容器添加类

来自分类Dev

当另一个元素以角度形式获取类时,如何向该元素添加类?

来自分类Dev

如果键存在,则向Scala映射中的元素添加数字的好方法,否则,不添加新元素

来自分类Dev

如果子元素和父元素具有相同的类,则不显示任何内容

来自分类Dev

如何使用CSS向元素添加类

来自分类Dev

JS-向元素添加类数组

来自分类Dev

使用PHP向元素添加类

来自分类Dev

向所有元素添加/删除类

来自分类Dev

内联 Javascript 停止向元素添加类

来自分类Dev

jQuery如果元素ID存在,则将类添加到同一元素

来自分类Dev

jQuery如果元素ID存在,则将类添加到同一元素

来自分类Dev

dom元素ID相等

来自分类Dev

如果子节点元素相等,如何添加父节点?

来自分类Dev

当有多个元素时如何向父元素添加类

来自分类Dev

根据元素的存在向scss中的元素添加颜色类

来自分类Dev

Javascript向div内的元素添加ID

来自分类Dev

字典:检查键和值的每个元素是否相等

来自分类Dev

Javascript:向dom添加和删除元素

Related 相关文章

  1. 1

    如果最接近的元素包含字符串,则向该元素添加类

  2. 2

    如果文本与子元素中的任何文本匹配,请向该子元素添加类?

  3. 3

    如何从其ID向元素添加类?

  4. 4

    如果另一个元素为空,如何向该元素添加一个类?

  5. 5

    为什么我不能向该html元素添加类?

  6. 6

    向当前元素添加活动类-在多个ID和类之间

  7. 7

    如何向对象添加元素键和值?

  8. 8

    向父元素添加类

  9. 9

    是否可以向Razor元素添加类和样式

  10. 10

    是否可以向Razor元素添加类和样式

  11. 11

    在mouseEnter上使用JavaScript向元素添加和删除类

  12. 12

    如果容器元素的内容比容器元素高,则向容器添加类

  13. 13

    当另一个元素以角度形式获取类时,如何向该元素添加类?

  14. 14

    如果键存在,则向Scala映射中的元素添加数字的好方法,否则,不添加新元素

  15. 15

    如果子元素和父元素具有相同的类,则不显示任何内容

  16. 16

    如何使用CSS向元素添加类

  17. 17

    JS-向元素添加类数组

  18. 18

    使用PHP向元素添加类

  19. 19

    向所有元素添加/删除类

  20. 20

    内联 Javascript 停止向元素添加类

  21. 21

    jQuery如果元素ID存在,则将类添加到同一元素

  22. 22

    jQuery如果元素ID存在,则将类添加到同一元素

  23. 23

    dom元素ID相等

  24. 24

    如果子节点元素相等,如何添加父节点?

  25. 25

    当有多个元素时如何向父元素添加类

  26. 26

    根据元素的存在向scss中的元素添加颜色类

  27. 27

    Javascript向div内的元素添加ID

  28. 28

    字典:检查键和值的每个元素是否相等

  29. 29

    Javascript:向dom添加和删除元素

热门标签

归档