【问题标题】:Manipulating SVG, need to change color操作SVG,需要改变颜色
【发布时间】:2015-05-22 19:11:02
【问题描述】:

我在更改颜色模块时遇到了一点问题。 它有点作用。我会尽力向你解释。

在 SVG 中有一张图片,用户通常可以更改三种颜色。所以我用一些 jQuery 操作我的 SVG,它可以工作......但是......当用户更改三种颜色中的一种,转到另一种颜色并返回他更改的第一种颜色时,它就不再起作用了。

我真的不明白为什么,这就是为什么我在这里看看是否有人可以帮助我。

你可以看到页面here

【问题讨论】:

  • 你可以为此发布一个 jsfiddle 吗?
  • 问题是你根据颜色选择路径,你可以在这些路径中添加id或类并使用jQuery。

标签: javascript svg colors


【解决方案1】:

if($(this).attr('fill')==exColor) 是问题所在,因为attr() 不使用当前值。你应该改用css()

http://api.jquery.com/attr/

http://api.jquery.com/css/

请记住以下场景:

  1. Fond 更改为 #FFFFFF
  2. Fond carte 更改为 #FFFFFF
  3. 现在假设您想更改Route:整个地图都会改变颜色,因为所有东西(除了水)都是白色的。

总之:使用不同类型的名称/类来始终更改正确的部分,就像 jcubic 在他的评论中所说的那样。

【讨论】:

    猜你喜欢
    • 2015-12-21
    • 2016-01-16
    • 2019-12-05
    • 1970-01-01
    • 2022-01-01
    • 2014-08-06
    • 2021-11-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多