在 D3js 中跟踪附加的图像
Keep track of appended image in D3js
我正在将微调器的图像附加到特定事件的图标上:
if (d.state == "0") {
d3.select(this).append("svg:image")
.attr("class", "circle")
.attr("id", this.name)
.attr("xlink:href", "Images/icons/ajax-loader.gif")
.attr("x", "+16px")
.attr("y", "-16px")
.attr("width", "20px")
.attr("height", "20px");
} else if (d.state == "1") {
d3.select("#" + d.name)
.remove();
}
在状态更改时,我想删除/隐藏此微调器图像。如何跟踪它?是否有一种机制可以将 ID 与它相关联,以便我以后可以使用它来删除它?
我尝试使用 ID(如代码片段所示),但它不起作用。
多种方式(取决于你如何使用它的更大上下文):
您可以将其分配给变量:
spinner = d3.selet(this).append("svg:image")
.attr('class', "circle")
...
然后用spinner.remove()
删除它.var spinner
必须在代码中使用它的所有位置都可以访问的位置(即文件顶部)声明。
您可以使用 .attr("id", "my_image")
为其分配一个 id,以后可以使用 d3.select("#my_image")
根据该 id 选择它。或者,您可以按其类d3.select('circle')
选择它。
如果您有多个具有相同 id 的图像,则 Id 将不起作用,而对于类,如果有多个图像,除非您首先d3.select(...)
其中一个图像的父级,否则它们都会被选中。
相关文章:
- 跟踪在JavaScript中加载图像的进度
- 将跟踪像素添加到 jQuery 图像轮播中的每个图像
- 使用带有 NodeJS 的图像像素数组跟踪边界
- Javascript - 获取谷歌跟踪代码管理器点击链接的图像替代文本
- 跟踪 ASP.NET 图像上的谷歌分析
- 在 D3js 中跟踪附加的图像
- 使用某种ID跟踪拖放图像
- 跟踪 Cookie 以决定加载哪些图像
- 跟踪图像javascript
- 使用Google Analytics跟踪图像下载
- 缓存时,图像宽度跟踪零(带加载)
- 如何跟踪使用Zepto设置动画的图像的位置
- 用于javascript的3D图像序列导出上的跟踪点
- 电子邮件跟踪在Gmail使用图像标签
- 跟踪js中人脸检测后如何捕获图像
- 鼠标位置跟踪上载的图像使用HTML和javascript
- 我可以用一个图像像素调用多个跟踪像素吗
- FineUploader:跟踪缩放图像客户端
- 具有204响应的信标跟踪图像回调函数
- 跟踪用户观看在线图像幻灯片的时间