我需要创建一个脚本元素,并在那里附加google地图函数。我想知道:我可以通过append在我的函数中使用一个变量吗?
var center = {lat: -34.397, lng: 150.644};
document.createElement("script").append(
function initMap() {
map = new google.maps.Map(document.getElementById('map'), {
center: center,
zoom: 8
});
}
);发布于 2018-08-31 18:25:24
.append(...)仅适用于节点或DOM字符串。不适用于JS代码。https://developer.mozilla.org/en-US/docs/Web/API/ParentNode/append
为什么不直接调用initMap()呢?如下所示:
var center = {lat: -34.397, lng: 150.644};
function initMap() {
return new google.maps.Map(document.getElementById('map'), {
center: center,
zoom: 8
});
var map = initMap();
发布于 2018-08-31 18:45:01
您可以使用此方法运行脚本。因为append仅用于Node-s。
function runScript(func) {
var e = document.createElement('script');
e.innerHtml = func.toString();
document.head.appendChild(e);
}
runScript(function(){
alert('okay');
});您可以使用此方法运行任何js脚本。
runScript(function(){
map = new google.maps.Map(document.getElementById('map'), {
center: center,
zoom: 8
});
});https://stackoverflow.com/questions/52113331
复制相似问题