如何让 DataMaps 在浏览器中显示?

How can I make DataMaps display in browser?

我正在尝试使用 Bootstrap 在我的网站中嵌入 DataMap (datamaps.github.io),并尝试使用以下代码作为测试代码。

来自 http://plnkr.co/edit/W9SbVTm0ovffh5i7ahid?p=preview:

<!DOCTYPE html>
<html lang="en">

<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css">
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap-theme.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js">
</script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js">
</script>

<script src="http://cdnjs.cloudflare.com/ajax/libs/d3/3.5.3/d3.min.js">
</script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/topojson/1.6.9/topojson.min.js">
</script>
<script src="http://datamaps.github.io/scripts/0.4.0/datamaps.world.min.js">
</script>


<script>

    $(document).ready(function () {
        $("#myTab li:eq(0) a").tab('show');
    });

</script>

<body>
<nav>
    <ul class="nav nav-pills center-pills" role="tablist" id="myTab">
        <li><a data-toggle="pill" href="#sectionA">Section A</a></li>
        <li><a data-toggle="pill" href="#sectionB">Section B</a></li>
    </ul>
</nav>

<div class="container">

    <!--<div id="map"></div>-->
    <section>
        <div class="tab-content">
            <div id="sectionA" class="tab-pane fade">
                <H2>sectionA</H2>
                <!-- the map will appear here -->
                <div id="map"></div>

            </div>
            <div id="sectionB" class="tab-pane fade">
                <H2>sectionB</H2>
                <div id="map2"></div>

            </div>
        </div>
    </section>


    <script>
        $('a[data-toggle="pill"]').on('shown.bs.tab', function (e) {
            console.log(e);
            if (e.target.href.indexOf('sectionA') > -1) {
                console.log("Should Show Map!!");
            }
        });

        var map = new Datamap({
            element: document.getElementById('map'),
            height: 500, width: 500
        });
        var map = new Datamap({
            element: document.getElementById('map2'), fills: {defaultFill: "fa0af0"},
            height: 500, width: 500
        });
    </script>

</div>
</body>
</html>  

但是,这不起作用,我可以让 html 代码在浏览器中脱机工作,但在我的 Github 页面站点上不能,即使代码相同。在网上,我只得到一个空白页。我在 Whosebug 的其他答案中看到,必须指定地图的大小才能使用 Bootstrap,但这里已指定但仍然不显示。

我是否遗漏了一些脚本导入?或者还有哪些其他可能的问题?

非常感谢任何帮助!

您有一些任务需要完成:

  • 删除这一行:<script src="/datamaps.world.min.js"></script>

  • 将您的资产的网址从 http 更改为 https

希望对您有所帮助!