Ver Mensaje Individual
  #2 (permalink)  
Antiguo 20/12/2012, 06:20
txemaarbulo
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: Cambiar un texto corto segun el pais del internauta

Hola Laura_Berenice:

Respecto a tu primera cuestión, para que geoip_country_code() pueda ser leído, tu código debería ser este:
Código HTML:
Ver original
  1.   <head>
  2.     <meta charset="utf-8">
  3.     <script type="text/javascript" src="http://j.maxmind.com/app/geoip.js">
  4.     </script>
  5.   </head>
  6.   <body>
  7.  
  8. <script type="text/javascript">
  9. geoip_country_code();
  10.  if (geoip_country_code() == 'ES') {
  11.       document.write('Hola amigo Español');
  12.     } else if (geoip_country_code() == 'MX') {
  13.       document.write('Hola amigo Mexicano');
  14.     } else if (geoip_country_code() == 'AR') {
  15.       document.write('Hola amigo Argentino');
  16.     } else if (geoip_country_code() == 'CL') {
  17.       document.write('Hola amigo Colombiano');
  18.   }
  19.  </script>
  20.  
  21.   </body>
  22. </html>

De otro modo te encontrarás con: Error: ReferenceError: geoip_country_code() is not defined.

Recuerda declarar antes geoip_country_code(); poner 'ES', 'MX' etc., entre comillas. (además de la codificación de caracteres).

Respecto al cambio de otros textos, tendrás que realizarlo mediante variables que irás cambiando entre if y else if.

Por ejemplo (mejor el script en el <head>):
Código HTML:
Ver original
  1. <!DOCTYPE html>
  2.   <head>
  3.     <meta charset="utf-8">
  4.     <title>Mi página</title>
  5.     <script type="text/javascript" src="http://j.maxmind.com/app/geoip.js"></script>
  6. <script type="text/javascript">
  7. window.onload=function(){
  8.       var texto_1 = document.getElementById("texto_1");
  9.       var texto_2 = document.getElementById("texto_2");
  10.       var texto_3 = document.getElementById("texto_3");
  11.       geoip_country_code();
  12.  if (geoip_country_code() == 'ES') {
  13.       texto_1.innerHTML = "Hola amigo español";
  14.       texto_2.innerHTML = "Segundo texto para el español";
  15.       texto_3.innerHTML = "Este es el tercer texto para España";
  16.     } else if (geoip_country_code() == 'MX') {
  17.       texto_1.innerHTML = "Hola amigo mexicano";
  18.       texto_2.innerHTML = "Segundo texto para el mexicano";
  19.       texto_3.innerHTML = "Este es el tercer texto para México";
  20.     };
  21. }
  22.  </script>
  23.  
  24.   </head>
  25.   <body>
  26.     <div id="texto_1"></div>
  27.     <div id="texto_2"></div>
  28.     <div id="texto_3"></div>
  29.   </body>
  30. </html>

Ello no interfiere a otros javascript o a que enlaces con archivos externos de js.

Respecto al cambio de caracteres, ello tiene que ver con la declaración inicial. <meta charset="utf-8"> (para los caracteres latinos con acentos, eñes, etc). No tengo experiencia pero tienes que evaluar si va a ir toda la página con caracteres chinos, árabes, japoneses etc., o tal vez puedas modificarlo para un tag específico.