Google地球插件在jquery-ui对话框中有内部错误(1.10.2)

时间:2013-03-15 22:59:05

标签: javascript jquery jquery-ui google-earth google-earth-plugin

我在jquery-ui对话框中弹出google earth插件。这与jquery-ui 1.9.2一起工作但在升级到1.10.2之后插件加载但是当试图移动对话框时,谷歌地球停止使用“谷歌地球插件有一个内部错误。尝试重新加载页面。”

在Win7和OSX 10.8.2上都会发生这种情况,并且它发生在Chrome和&苹果浏览器。 有其他人遇到过这个问题吗?解决方法?

下面的代码是jsfiddle,如果你将jquery-ui降级到1.9.2,一切正常:

<!DOCTYPE HTML>
<html>
    <script type="text/javascript" src="//www.google.com/jsapi"></script>

    <script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>

    <script src="//ajax.googleapis.com/ajax/libs/jqueryui/1.10.2/jquery-ui.min.js"></script>
    <link type="text/css" href="//ajax.googleapis.com/ajax/libs/jqueryui/1.10.2/themes/smoothness/jquery-ui.css" rel="stylesheet" />
<script>

var loaded = false;

function loadGE() {
    google.load('earth', '1', {
        callback: function () {
            google.earth.createInstance('editmap3d', function (instance) {
                initEditGE(instance);
            }, function () {
                failureGE();
            });
        }
    });
}

function initEditGE(instance) {
    loaded = true;
    ge = instance;

    var lookAt = ge.createLookAt('');
    lookAt.setLatitude(36.584207);
    lookAt.setLongitude(-121.754322);
    lookAt.setRange(5000.0); //default is 0.0

    ge.getView().setAbstractView(lookAt);
    ge.getWindow().setVisibility(true);
    ge.getNavigationControl().setVisibility(ge.VISIBILITY_SHOW);
}

function failureGE() {
    console.log("GE failed to load...");
}


$(document).ready(function () {
    $("#opendialog").button().click(function () {
        $("#editDialog").dialog("open");

        if (!loaded) loadGE();
    });

    $("#editDialog").dialog({
        autoOpen: false,
        height: 500,
        width: 500,
        modal: true,
        resizable: false
    });
})


</script>

<body>
    <div>GE in popup</div>
    <button id="opendialog">open</button>
    <div id="editDialog">
        <div id="mapcontainer" style="width:600; height:600;">
            <div id="editmap3d" style="height:100%;"></div>
        </div>

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

1 个答案:

答案 0 :(得分:0)

我实际上已经观察到与1.10.1类似的内容,其中插件加载然后崩溃。我注意到它与非缩小版本一起工作正常,但是与1.10.1的缩小版本崩溃。

编辑:我的问题不是jquery-ui,而是jquery和google earth。使用UI 1.10.3,它似乎可以使用min而不是min。