1

Locationbox は、Google マップのようなサービスを提供する外部システムです。ここで例を確認できます。

http://www.locationbox.com.tr/web/demo/displaymap.jsp

Salesforce プラットフォームにデプロイしたい。最初のスクリプト タグは、ロケーション ボックス サービスから JavaScript コードを取得します。startup() を実行した後、ドキュメント内のdiv id="map"...に動的コンテンツを設定します。動的コンテンツにはいくつかの png 画像があります。以下のコードはローカルでは html ファイルとして機能しますが、apex ページでは機能しません。(関数 x() は頂点ページで期待どおりに機能します。)

頂点ページで次のコードを使用しています。

<apex:page>
    <script language="Javascript" src="http://www.locationbox.com.tr/locationbox/services?Key=mykey&Cmd=API&Typ=JS"<script language="JavaScript">

        var mapper  = new IMapper();
        window.addEventListener('load', function() {alert('OK1'); x();}, false);
        window.addEventListener('load', function() {alert('OK1'); startup();}, false);

        function startup() {
            mapper.initMap(41.1, 29.1, 7);
            mapper.addNavigationPanel();
            MVGlobalVariables();
            return;
        }
        function x() {
            document.getElementById("map").innerHTML = 2;
        }
    </script>

    <div id="map" style="border: 1px solid black; width:100%; height:100%; z-index: 0; position:relative; -moz-user-select:none;   background-color: lightgrey;" tabindex="0">1</div>
</apex:page>
4

1 に答える 1

0

定義のapex:includeScript直後に使用し、locationbox-script を html-tag として含めないようにしてください。apex:page

<apex:page>

<apex:includeScript value="http://www.locationbox.com.tr/locationbox/services?Key=mykey&Cmd=API&Typ=JS" />

...

</apex:page>

そして、最良の方法については、httpsリンクを使用してみてください

于 2012-11-23T14:40:40.723 に答える