2016-12-08 18 views
0

ユーザーにランダムな場所を示唆するアプリケーションを作成し、その場所のページにGoogleマップを表示します。Googleマップを使用してiframeのsrcに変数を渡す方法

私が次のチュートリアルでは、これを行うためのiframe埋め込みコードの使用を推奨しています。

ランダムな場所に作成された変数「barname」をiframeのsrc URLに渡すにはどうすればよいですか?ここで

はからのコードです:

<script> 

      // Our List of Bars 
      var bars = [ 
       'Siggys', 
       'Blind Tiger', 
       'Zum Schneider', 
       'One Month', 
       'Home Sweet Home', 
       'Union Pool' 
      ]; 

      // Our List of Friends 
      var friends = [ 
       'Mattan', 
       'Chris', 
       'Lee', 
       'Casey', 
       'that girl you forgot to text back', 
       'Kayne West', 
       'Gerard' 
      ]; 

      var randomNumber = Math.floor(Math.random()*bars.length); 

      var barname = bars[randomNumber]; 

      var friendname = friends[randomNumber]; 

      document.write("How about you go to <strong>" + barname + "</strong> with <strong>" + friendname + "</strong>?"); 

     </script> 

私はJavascriptのためにGoogleマップAPIを使用してこれを行うための他の方法があるかもしれません知っているが、私はインラインフレームを使用して、簡単な解決策を把握しようとしていますこれはチュートリアルの示唆であるため、コードを埋め込みます。

読んでいただきありがとうございます。

答えて

0

GETパラメータ渡しのようなものですか?ここで

は、私が試したものです:https://jsfiddle.net/4gb4p3sq/1/

//Made an iframe in my html named locationFrame. 

    //This takes locationFrame's src. 
    var frameSrc = document.getElementById("locationFrame").src; 

    //The src ends with a "?q=" which will be our GET parameter. 
    frameSrc = frameSrc + barname; 

    //example output: https://www.google.com/search??q=Siggys 
    alert(frameSrc); 

    //then add this function to your iframe to get the parameter 
    function getParameterByName(name, url) { 
     if (!url) { 
     url = window.location.href; 
     } 
     name = name.replace(/[\[\]]/g, "\\$&"); 
     var regex = new RegExp("[?&]" + name + "(=([^&#]*)|&|#|$)"), 
      results = regex.exec(url); 
     if (!results) return null; 
     if (!results[2]) return ''; 
     return decodeURIComponent(results[2].replace(/\+/g, " ")); 
    } 

    //our GET parameter is called q and our src is stored at frameSrc 
    var variableFromFirstHtml = getParameterByName('q', frameSrc); 

    //alert to check if we're getting barname 
    alert(variableFromFirstHtml); 
})(); 
関連する問題