我目前正在尝试使用d3.js在Illustrator中创建的相当复杂的SVG。 SVG是平面图,每层都是自己的层。要显示一个楼层,我只需要显示该层,并隐藏其他层,这非常方便将它们保存在一个SVG中。
我遇到的一个问题是,当我从Illustrator导出时,有一些具有相同名称的元素。例如,我在每个楼层都有一个Elevator A
元素。当我导出到SVG时,它会通过将那些重命名为id = "elevator_a_1"
和id = "elevator_a_2"
(但不一定按顺序)来消除重复的ID。我想在Illustrator中解决问题的一种方法是对每个元素进行唯一命名,但我认为这会使我的组织陷入混乱。
我的问题是:
1st_floor->elevator_a
,2nd_floor->elevator_a
,永远不会同时出现。d3.select("[id^='elevator_a']")
答案 0 :(得分:1)
不得重复使用ID - 无论它们出现在何处,它们都应该是唯一的。
D3的选择器为CSS selectors。您可以使用attribute names的正则表达式,完全使用您问题中的语法。