¡Ayúdanos a traducir esta Web y consigue licencias gratis!
Usuario anónimo  |  Ingresar  |  Regístrate

Cómo...

Custom Inside Javascript

Utilizaremos el "CustomInsideJavascript" para añadir nuestro propio javascript.

El CustomInsideJavascript sirve para añadir javascript que se ejecutará en la carga del mapa. Es decir, el CustomInsideJavascript añadido no podrá ser accedido por eventos como, por ejemplo, el click de un botón. Para eso tenemos el CustomJavascript

Para ello deberemos conocer el javascript que propone la API de Google o utilizar el método "ToString()" de elementos de nuestro control, como por ejemplo el del GMarker.

Nuestro ejemplo es muy sencillo, y nos permitimos combinar el CustomInsideJavascript con el CustomJavascript. Mediante el CustomJavascript creamos una función que añadirá iconos en ubicaciones aleatorios, pero como éste no puede iniciar el evento, utilizamos el CustomInsideJavascript para llamar por primera (y única) vez al código.

Como os podéis imaginar, la metodología seguida en el ejemplo supone el uso típico del CustomInsideJavascript: llamar a una función CustomJavascript en el momento se carga el mapa.




Code.aspx
<cc1:GMap ID="GMap1" runat="server" />
<input type="button" id="Button1" value="Añadir icono" onclick="subgurim_Add()" />
<input type="button" id="Button2" value="Borrar último icono" onclick="subgurim_Delete()" />
<input type="button" id="Button3" value="Borrar todos los iconos" onclick="subgurim_Remove()" />
Code.aspx.cs
System.Text.StringBuilder sb = new System.Text.StringBuilder();

GLatLng center = new GLatLng(44, 5);
GMap1.setCenter(center, 8);

//GMap1.Add("addRandom();", true);
GMap1.addCustomInsideJavascript("addRandom();");

sb.Append("var max = 10;");
sb.Append("function addRandom()");
sb.Append("{");
GMarker marker = new GMarker(
string.Format("new GLatLng({0}.getCenter().lat() + Math.random() - 0.5, {0}.getCenter().lng() + Math.random() - 0.5)", GMap1.GMap_Id));
sb.Append(marker.ToString(GMap1.GMap_Id));
sb.Append("if (max-- > 0)");
sb.Append("setTimeout('addRandom()', 1000)");
sb.Append("}");

GMap1.Add(sb.ToString());
Powered by Subgurim.NET