Javascript 在平铺显示失败的情况下显示替代图像/平铺(D3 Geo平铺)

Javascript 在平铺显示失败的情况下显示替代图像/平铺(D3 Geo平铺),javascript,d3.js,Javascript,D3.js,我正在尝试修改Mike Bostock的D3 geo tiles应用程序,以便在找不到瓷砖的地方显示替代图像/瓷砖集(例如,缩放级别太高)。这将为脚本提供更多的灵活性 我的解决方案几乎可以工作,但我无法将平铺缩放/变换(d)传递给我的变通功能。这是我的,下面是一段代码,我尝试在无法加载磁贴的情况下显示替代图像: image.enter().append("image") .attr("x", function(d) { return d[0] * 256; }) .at

我正在尝试修改Mike Bostock的D3 geo tiles应用程序,以便在找不到瓷砖的地方显示替代图像/瓷砖集(例如,缩放级别太高)。这将为脚本提供更多的灵活性

我的解决方案几乎可以工作,但我无法将平铺缩放/变换(d)传递给我的变通功能。这是我的,下面是一段代码,我尝试在无法加载磁贴的情况下显示替代图像:

 image.enter().append("image")
      .attr("x", function(d) { return d[0] * 256; })
      .attr("y", function(d) { return d[1] * 256; })
      .attr("width", 256)
      .attr("height", 256);

    // create a test image
    var imgTest = new Image();

    // if it loads successfully add it to the svg image
    imgTest.onload = function(d) {
      image.data(tiles, function(d) { return d})
             .attr("xlink:href", function(d){return imgTest.src});
    }
    // if it fails test another image
    imgTest.onerror = function() {
      imgTest.src = "https://dummyimage.com/50x50/000/fff.png&text=An+Image!"
    }
    // this will (potentially) fail
    imgTest.src = "https://" + "abc"[d[1] % 3] + ".tiles.mapbox.com/v3/mapbox.natural-earth-2/" + d[2] + "/" + d[0] + "/" + d[1] + ".png";

没有人来回答我的问题。尽管如此,我还是找到了另一种方法来实现我所需要的(即去掉那些坏得可怕的链接图标)。这是可笑的简单。。。但是在任何地方都找不到这个,而且它和D3一起工作

.attr("onerror", "this.style.display='none'")
以下是上下文中的代码行:

image.enter().append("image")
      .attr("xlink:href", function(d) { return "https://" + "abc"[d[1] % 3] + ".tiles.mapbox.com/v3/mapbox.natural-earth-2/" + d[2] + "/" + d[0] + "/" + d[1] + ".png"; })
      .attr("x", function(d) { return d[0] * 256; })
      .attr("y", function(d) { return d[1] * 256; })
      .attr("onerror", "this.style.display='none'")
      .attr("width", 256)
      .attr("height", 256);