当将Tableau可视化嵌入到页面中时,我们包含Tableau JavaScript API。我们根据一些支持线程尝试了不同的方式。
<script src="https://xxx.xxx/javascripts/api/tableau-2.0.0.min.js"></script>
<script src="https://xxx.xxx/javascripts/api/tableau-2.min.js"></script>
<script src="https://xxx.xxx/ie-sp-embed-javascripts/api/tableau-2.0.0.min.js"></script>
每一个其他的浏览器,包括IE11,都能加载脚本,window.tableau被定义,并用于在页面上创建一个视觉效果。Edge浏览器可以获取脚本,在开发者工具的网络选项卡中可以看到,但window.tableau一直没有定义。
Tableau服务器版本:10.5.23(10500.20.0117.2214)64位Windows。
寻找建议。
EDIT:问题似乎源于一个安全策略。Edge不会从我们的VPN内部加载脚本。然而,在外部计算机上使用Edge一切正常。
我试着参考了 示例 为Tableau JavaScript API从其官方网站。
代码。
<!DOCTYPE html>
<html>
<head>
<title>Basic Embed</title>
<script type="text/javascript" src="https://public.tableau.com/javascripts/api/tableau-2.min.js"></script>
<script type="text/javascript">
function initViz() {
var containerDiv = document.getElementById("vizContainer"),
url = "http://public.tableau.com/views/RegionalSampleWorkbook/Storms",
options = {
hideTabs: true,
onFirstInteractive: function () {
console.log("Run this code when the viz has finished loading.");
}
};
var viz = new tableau.Viz(containerDiv, url, options);
// Create a viz object and embed it in the container div.
}
</script>
</head>
<body onload="initViz();">
<div id="vizContainer" style="width:800px; height:700px;"></div>
</body>
</html>
在MS Edge传统浏览器(Microsoft Edge 44.18362.449.0)中输出。
在MS Edge Chromium浏览器(Microsoft Edge 83.0.478.13(官方构建)测试版(64位))中输出。
你可以看到代码工作正常,并在页面上创建可视化。
我建议你可以尝试在你那边运行这个例子,并让我们知道结果。
如果问题仍然存在,那么请尝试告知我们你使用的MS Edge浏览器的具体版本来做这个测试?请提供您的示例代码来重现我们这边的问题。它可以帮助我们正确理解问题。我们将尝试检查并尝试为您提供进一步的建议。