为什么我的js脚本在发布到Azure时会多次运行

时间:2016-01-25 22:31:27

标签: asp.net azure d3.js web-config azure-web-sites

我有一个在主页上显示SVG图像的网站,使用d3.js在js中绘制图像。

当我预览网站时,图像看起来很好,并且像我期望在多个浏览器中一样互动。

然而,一旦将其发布到azure并在相同的浏览器上查看,svg图像将重复2次以上,因此图像在主页上相互直接显示3次。

在html中,绘图是通过简单的脚本调用创建的。

是否可以在azure中托管的网站上显示SVG图像。

2 个答案:

答案 0 :(得分:0)

您需要添加mimetypes,以便Azure在告知客户端文件时如何处理这些文件。

如果你将它添加到web.config中,它应该可以工作......

<configuration>
   <system.webServer>
      <staticContent>
         <remove fileExtension=".svg"/>
         <mimeMap fileExtension=".svg" mimeType="image/svg+xml" />
      </staticContent>
   </system.webServer>
</configuration>

答案 1 :(得分:0)

感谢大家的帮助,实际上是我的天真导致问题,调用脚本的方式是运行d3绘制代码然后在脚本中我的同事编写它也调用脚本在功能之后。

只需从脚本中删除所有调用,然后在加载它的脚本标记下面的脚本标记中调用startDrawing()函数,就意味着它只被绘制一次。