gpt4 book ai didi

visualization - google.load 导致 dom/screen 为空

转载 作者:行者123 更新时间:2023-12-02 23:47:21 24 4
gpt4 key购买 nike

我正在尝试异步添加谷歌可视化,但遇到了问题。我已将范围缩小到导致问题的 google.load 。当 google.load 部分 js 运行时,我得到一个空的屏幕/dom。任何人都知道我做错了什么。

我也尝试过使用 google.setOnLoadCallback,得到了相同的结果。

任何帮助都会很棒

相关代码:

    $(document).ready(function () {
google.load('visualization', '1', { 'packages': ['geomap'] }, { 'callback': drawVisualization });


function drawVisualization() {
$.ajax({
type: "POST",
data: "{'monitorId':'" + monitor + "','monitorName':'" + name + "','context':'" + context + "'}",
dataType: "json",
url: "WebService.asmx/LoadMonitorToolGeo",
contentType: "application/json; charset=utf-8",
processData: true,
success: function (msg) {

var obj = jQuery.parseJSON(msg.d);


// $(msg.d).hide().appendTo("#sortable").fadeIn();
$("#" + obj.context).find(".toolContent").hide().html(obj.data).fadeIn();

DrawWorldMap(obj.map, obj.context);

},
error: function (req, status, error) {

},
complete: function (req, status) {


}
});



function DrawWorldMap(response, id) {
var data = new google.visualization.DataTable();
data.addRows(response.d.length);
data.addColumn('string', 'Country');
data.addColumn('number', 'Popularity');
for (var i = 0; i < response.d.length; i++) {
data.setValue(i, 0, response.d[i].Country);
data.setValue(i, 1, response.d[i].Popularity);
}
var options = {};
options['dataMode'] = 'regions';

var container = document.getElementById(id);
var geomap = new google.visualization.GeoMap(container);
geomap.draw(data, options);
}

});

最佳答案

这篇文章对我有帮助:

How to dynamically load the Google Maps javascript API (On demand loading)

这里的区别在于在 load 方法选项属性中定义 callback:

var options = {packages: ['corechart'], callback : myCallback};
google.load('visualization', '1', options);

我相信这样 google.setOnLoadCallback(myCallback) 将不再需要,幸运的是,当添加 callback 时,该方法似乎不会清理页面.

关于visualization - google.load 导致 dom/screen 为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5300550/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com