Foro de elhacker.net

Programación => Desarrollo Web => Mensaje iniciado por: + 1 Oculto(s) en 28 Mayo 2016, 20:58 pm



Título: no ejecuta script
Publicado por: + 1 Oculto(s) en 28 Mayo 2016, 20:58 pm
hice este codigo pero no ejecuta mi script
Código
  1. <title>Geolocalizacion</title>
  2. <meta name="viewport" content="initial-scale=1.0, user-scaleble=no">
  3. <meta charset="utf-8">
  4. <style >
  5. #map-canvas{
  6. height: 380px;
  7. width: 300px;
  8. margin: :0px;
  9. padding: 0px;
  10. background-color: #000;
  11. }
  12. </style>
  13. <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.1/jquery.min.js"></script>
  14. <script src="fancywebsocket.js"></script>
  15. <script language="javascript" src="https://code.jquery.com/jquery-1.12.4.js"></script>
  16. <script src="https://maps.googleapis.com/maps/api/js?v=3.exp&signed_in=true"></script>
  17. <script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"></script>
  18.  
  19. alert("lslslsl");
  20. var map;
  21. var marker;
  22. function initialize(){
  23. var mapOptions={
  24. zoom:15;
  25. };
  26. map=new google.maps.Map(document.getElementById('map-canvas'),mapOptions);
  27.  
  28. if (navigator.geolocation) {
  29. navigator.geolocation.getCurrentPosition(function(position){
  30. var pos=new google.maps.LatLng(position.coords.latitude,position.coords.longitude)
  31.  
  32. var goldStar={
  33. path:google.maps.SymbolPath.CIRCLE,
  34. strokeColor:'#276ED0',
  35. fillColor:'#276ED0',
  36. fillOpacity:.9,
  37. strokeWeight:1,
  38. scale:6,
  39. };
  40.  
  41. var marker=new google.maps.Marker({
  42. position:pos,
  43. icon:goldStar,
  44. draggable:true,
  45. animation:google.maps.Animation.DROP,
  46. map:map,
  47. });
  48. map.setCenter(pos);
  49. },function(){
  50. handleNoGeolocation(true);
  51. });
  52. }else{
  53. handleNoGeolocation(false);
  54. }
  55. }
  56.  
  57. function animar(){
  58. navigator.geolocation.getCurrentPosition(function(position)
  59. {
  60. var pos =new google.maps.LatLng(position.coords.latitude, position.coords.longitude);
  61.  
  62. map.panTo(pos);
  63.  
  64. var goldStar={
  65. path:google.maps.SymbolPath.CIRCLE,
  66. strokeColor:'#FF4E51',
  67. fillColor:'#FF4E51',
  68. fillOpacity:.9,
  69. strokeWeight:1,
  70. scale:5,
  71. };
  72. var marker=new google.maps.Marker({
  73. position:pos,
  74. icon:goldStar,
  75. draggable:true,
  76. map:map,
  77. });
  78.  
  79. var option={
  80. map:map,
  81. position:pos,
  82. };
  83. send(position.coords.latitude+","+position.coords.longitude);
  84. map.setCenter(options.position);
  85. });
  86. }
  87. function handleNoGeolocation(errorFlag){
  88. if (errorFlag) {
  89. var content='Error:the service';
  90. }else{
  91. var content="tu buscador";
  92. }
  93. var options={
  94. map=map,
  95. position:new google.maps.LatLng(60,105),
  96. content:content,
  97. };
  98. var infowindow=new google.maps.infoWindow(options);
  99. map.setCenter(options.position);
  100. }
  101. google.maps.event.addDomListener(window,'load',initialize);
  102. setTimeout(function(){animar()},5000);
  103. function pocision(pos){
  104.  
  105. }
  106.  
  107. </script>
  108. </head>
  109. <div id="map-canvas">
  110.  
  111. </div>
  112.  
  113. </body>
  114. </html>


Título: Re: no ejecuta script
Publicado por: gAb1 en 28 Mayo 2016, 23:30 pm
Se te olvidó añadir un document ready, o su equivalente si estás usando jquery:

Código
  1. $(function () {
  2.    // code here
  3. });


Título: Re: no ejecuta script
Publicado por: + 1 Oculto(s) en 29 Mayo 2016, 02:20 am
gracias por responder, pero aun no logro comprender como ejecutar mi script


Título: Re: no ejecuta script
Publicado por: gAb1 en 29 Mayo 2016, 19:25 pm
Para que tus scripts se ejecuten tienen que estar dentro de un document ready.

Código
  1. <script type="text/javascript">
  2.    $(function () {
  3.        alert('Estoy funcionando');
  4.        var map;
  5.        var marker;
  6.        // más código aquí dentro
  7.    });


Título: Re: no ejecuta script
Publicado por: + 1 Oculto(s) en 29 Mayo 2016, 22:16 pm
hice la prueba y si esta ejecutando el script, lo que pasa es que en alguna parte esta mal


tengo que debuguear


gracias por la ayuda


Título: Re: no ejecuta script
Publicado por: eLank0 en 30 Mayo 2016, 17:28 pm
 :¬¬ Observemos con atención antes de responder cosas sin sentido.

No se ejecutará tu script sino ejecutas ninguna de las funciones que declaras.

Saludos.


Título: Re: no ejecuta script
Publicado por: MinusFour en 30 Mayo 2016, 18:17 pm
:¬¬ Observemos con atención antes de responder cosas sin sentido.

No se ejecutará tu script sino ejecutas ninguna de las funciones que declaras.

Saludos.

El script si se ejecuta, las funciones no. No es lo mismo. Las funciones están disponibles para ejecutarse después de que el script ha sido ejecutado (tambien hay un alert y variables definidas). El script sin embargo puede fallar. El que no llame a ninguna función en el script es un punto valido, pero igual puede estar llamando a alguna función de forma asíncrona en otro script.

Por ejemplo, puede haber una linea en alguno de los scripts como:

Código
  1. document.addEventListener('DOMContentLoaded', function(){
  2.    window.initialize();
  3. });

Las librerias de JS de Google Maps funcionan de esta forma cuando trabajan de manera asíncrona. Lo único es que no ha configurado correctamente los script tags:

Código
  1. <script async defer src="https://maps.googleapis.com/maps/api/js?v=3.exp&signed_in=true&callback=initialize"></script>

Veo también que intentas cargar la libreria de JS nuevamente en otro script tag (aunque es la version 2 de Google Maps). No he usado la libreria JS de Google Maps, pero al parecer necesitas una llave.

https://developers.google.com/maps/documentation/javascript/get-api-key

Cita de: javascript
All Google Maps javascript API applications require authentication.


Título: Re: no ejecuta script
Publicado por: + 1 Oculto(s) en 31 Mayo 2016, 04:48 am
es decir que tengo que estar auntentificado para usar la libreria?