jquery – 无法在pageload之后添加Google Map API脚本

前端之家收集整理的这篇文章主要介绍了jquery – 无法在pageload之后添加Google Map API脚本前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
由于某些限制,我无法在页面加载时使用Google Map API的脚本标记.我尝试过多种方式将脚本添加页面中,包括使用jQuery添加脚本标记,如下所示:
$('head').append('<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"></script>');

我也试图以更手动的方式包含它,如下所示:

var script = document.createElement("script");
script.src = 'http://maps.google.com/maps/api/js?sensor=false';
script.type = "text/javascript";
document.head.appendChild(script);

这两个示例都会导致整个页面变为白色和空白.有关如何做到这一点的任何想法?

解决方法

这对我有用(遵循JAM的评论) – 只需在页面加载后运行功能
function writeGoogleMapsScript()
{
        document.oldWrite = document.write; 
        document.write = function(text)
        {                                 
            var parser = new DOMParser();
            var element = parser.parseFromString(text,"text/xml");           
            var child = element.firstChild;                
            var element = document.createElement("script");
            element.src = child.getAttribute('src');
            element.type= "text/javascript";            
            document.getElementsByTagName("head")[0].appendChild(element);                          
            document.write = document.oldWrite;
        };                         
        var element = document.createElement("script");
        element.src = "http://maps.google.com/maps/api/js?sensor=true&language=iw";
        element.type= "text/javascript";            
        document.getElementsByTagName("head")[0].appendChild(element);  
}

猜你在找的jQuery相关文章