Foros del Web » Programando para Internet » Javascript »

FAQs JavaScript

Estas en el tema de FAQs JavaScript en el foro de Javascript en Foros del Web. P.- ¿Cómo puedo cambiar la imagen de fondo de la página o una imagen cualquiera de la misma al hacer un mouseOver sobre un enlace? ...
  #106 (permalink)  
Antiguo 15/02/2003, 08:56
Avatar de KarlanKas
Moderador extraterrestre
 
Fecha de Ingreso: diciembre-2001
Ubicación: Madrid
Mensajes: 6.987
Antigüedad: 22 años, 3 meses
Puntos: 61
106. Cómo cambiar una imagen al hacer un MouseOver


P.-¿Cómo puedo cambiar la imagen de fondo de la página o una imagen cualquiera de la misma al hacer un mouseOver sobre un enlace?
R.-Con este código:
[Ver ejemplo]


Código PHP:
<html>
<
head>
<
style>
A{text-decoration:none;
color:#330099;
font:bold 10px/15px verdana;
}
A:HOVER{text-decoration:underline;}
</
style>
    <
title>Ejemplillo</title>
    <
script>

// Quiero agradecer públicamente la gran ayuda de tunait.
// Por enseñarme, entre otras muchas cosas, la importancia de la elección de la denominación de variables. 
// Estas variables pretenden ser una aplicación práctica de tantas conversaciones sobre las mismas. X·D



    
codigoQueTeAhorrasPicar="";
    
    function 
crear(a,b,c,d){
    
this.tezto=a;
    
this.ondeVa=b;
    
this.tieneSuImagensitaYTo=new Image
    this
.tieneSuImagensitaYTo.src=c;
    if(
d){this.queFotoCambio=d}
    }
//unEnlasito=new crear([TEXTO QUE APARECE EN EL ENLACE],[DESTINO DEL ENLACE],[RUTA DE LA IMAGEN],[ID DE LA IMAGEN QUE CAMBIA- SI SE DEJA EN BLANCO SE CAMBIA EL FONDO DE LA PÁGINA]);
    
unEnlasito=new Array;
    
unEnlasito[0]=new crear("Veamos la página de Tunait","http://www.tunait.com","http://www.tunait.com/encuentros/encuentrosb.jpg","macario");
    
unEnlasito[1]=new crear("Veamos la de Caricatos","http://www.pepemolina.com","http://www.forosdelweb.com/avatar.php?userid=18599&dateline=1037047895");
    
unEnlasito[2]=new crear("Quieres ver la página de Web Are You?","http://www.karlankas.net","http://www.webareyou.com/logo.jpg");

// fonditoMono=[EL FONDO QUE SE QUIERE PARA LA PÁGINA]    

    
fonditoMono="White url('http://www.klasic.org/img/klasic.jpg') no-repeat fixed center";
    
//---------------------------------------- NO TOQUES A PARTIR DE AQUI SI NO SABES LO QUE HACES ---------------------
    
for (principio=0;principio<unEnlasito.length;principio++){
    
codigoQueTeAhorrasPicar=codigoQueTeAhorrasPicar+"<a href="+unEnlasito[principio].ondeVa+" onmouseout='noQuieroVe(unEnlasito["+principio+"])' onmouseover='quieroVe(unEnlasito["+principio+"])'>"+unEnlasito[principio].tezto+"</a><br>";
    }
    
    function 
quieroVe(etoMimamente){
    if (
etoMimamente.queFotoCambio!=null){
    
fotilloPaCambia=document.getElementById(etoMimamente.queFotoCambio);
    
fotilloPaCambia.src=etoMimamente.tieneSuImagensitaYTo.src;
    }
    else{
cuerpoSerrano.style.background="White url("+etoMimamente.tieneSuImagensitaYTo.src+") no-repeat fixed center";}
    }
    function 
noQuieroVe(etoMimamente){
    if (
etoMimamente.queFotoCambio!=null){
    
fotilloPaCambia=document.getElementById(etoMimamente.queFotoCambio);
    
fotilloPaCambia.style.visibility="hidden";
    }
    else{
cuerpoSerrano.style.background=fonditoMono;}
    }
    
//----------------------------------- HALE, YA PUEDES TOCAR ----------//
        
</script>
</head>

<body id="cuerpoSerrano" onload="document.getElementById('cuerpoSerrano').style.background=fonditoMono">

<script>document.write(codigoQueTeAhorrasPicar)</script>

<!-- ESTAS IMAGENES SON DE PRUEBA. 'TUNAIT' CAMBIA LA FOTO MACARIO. 
SI ESTAS IMAGENES TIENEN CONTENIDO DESDE EL PRINCIPIO QUITA EL ONLOAD Y EL STYLE---->

<img id=pepe style="visibility:hidden" onLoad="this.style.visibility='visible'"><br>

<img id=juan style="visibility:hidden" onLoad="this.style.visibility='visible'"><br>

<img id=macario style="visibility:hidden" onLoad="this.style.visibility='visible'"><br>

</body>
</html> 
__________________
Cómo escribir

No hay pregunta tonta, sino tonto que quiere seguir en la ignorancia.

Última edición por KarlanKas; 26/02/2003 a las 06:44
  #107 (permalink)  
Antiguo 18/02/2003, 17:48
Avatar de Kaopectate
Colaborador
 
Fecha de Ingreso: diciembre-2001
Ubicación: Curaçao (Antillas Holandesas)
Mensajes: 3.179
Antigüedad: 22 años, 3 meses
Puntos: 38
107.- Sumar (o restar) días a una fecha

P: ¿Como puedo sumar o restar días a una fecha?

R: [ver ejemplo]

Código PHP:
<html>
<
head>
 <
script language="JavaScript">

  var 
aFinMes = new Array(312831303130313130313031);

  function 
finMes(nMesnAno){
   return 
aFinMes[nMes 1] + (((nMes == 2) && (nAno 4) == 0)? 10);
  }

   function 
padNmb(nStrnLensChr){
    var 
sRes String(nStr);
    for (var 
0nLen String(nStr).lengthi++)
     
sRes sChr sRes;
    return 
sRes;
   }

   function 
makeDateFormat(nDaynMonthnYear){
    var 
sRes;
    
sRes padNmb(nDay2"0") + "/" padNmb(nMonth2"0") + "/" padNmb(nYear4"0");
    return 
sRes;
   }
   
  function 
incDate(sFec0){
   var 
nDia parseInt(sFec0.substr(02), 10);
   var 
nMes parseInt(sFec0.substr(32), 10);
   var 
nAno parseInt(sFec0.substr(64), 10);
   
nDia += 1;
   if (
nDia finMes(nMesnAno)){
    
nDia 1;
    
nMes += 1;
    if (
nMes == 13){
     
nMes 1;
     
nAno += 1;
    }
   }
   return 
makeDateFormat(nDianMesnAno);
  }

  function 
decDate(sFec0){
   var 
nDia Number(sFec0.substr(02));
   var 
nMes Number(sFec0.substr(32));
   var 
nAno Number(sFec0.substr(64));
   
nDia -= 1;
   if (
nDia == 0){
    
nMes -= 1;
    if (
nMes == 0){
     
nMes 12;
     
nAno -= 1;
    }
    
nDia finMes(nMesnAno);
   }
   return 
makeDateFormat(nDianMesnAno);
  }

  function 
addToDate(sFec0sInc){
   var 
nInc Math.abs(parseInt(sInc));
   var 
sRes sFec0;
   if (
parseInt(sInc) >= 0)
    for (var 
0nInci++) sRes incDate(sRes);
   else
    for (var 
0nInci++) sRes decDate(sRes);
   return 
sRes;
  }

  function 
recalcF1(){
   
with (document.formulario){
    
fecha1.value addToDate(fecha0.valueincrem.value);
   }
  }

 
</script>
</head>
<body>
 <form name="formulario">
  <table>
   <tr>
    <td align="right">
     Fecha (dd/mm/aaaa):
    </td>
    <td>
     <input type="text" name="fecha0" size="10">
    </td>
   </tr>
   <tr>
    <td align="right">
     Incremento:
    </td>
    <td>
     <input type="text" name="increm" size="3">
    </td>
   </tr>
   <tr>
    <td align="right">
     Resultado (dd/mm/aaaa):
    </td>
    <td>
     <input type="text" name="fecha1" disabled size="10">
    </td>
   </tr>
   <tr>
    <td colspan="2" align="center">
     <input type="button" onclick="recalcF1()" value="Calcular">
    </td>
   </tr>
  </table>
 </form>
</body>
</html> 

Última edición por Kaopectate; 19/02/2003 a las 11:29
  #108 (permalink)  
Antiguo 19/02/2003, 02:49
Avatar de epa2  
Fecha de Ingreso: abril-2002
Ubicación: Málaga
Mensajes: 1.475
Antigüedad: 21 años, 11 meses
Puntos: 9
108.- Saludar al visitante por su país de procedencia.

P: ¿Como puedo saludar al visitante según su pais de origen?.

R: Con este código.

Tomado de: Elosan

Código:
 <script>
 nul = "";
 if (navigator.userLanguage == "es") nul = "España";
 if (navigator.userLanguage == "es-mx") nul = "Mejico";
 if (navigator.userLanguage == "es-gt") nul = "Guatemala";
 if (navigator.userLanguage == "es-cr") nul = "Costa Rica";
 if (navigator.userLanguage == "es-do") nul = "Republica Dominicana";
 if (navigator.userLanguage == "es-pa") nul = "Panama";
 if (navigator.userLanguage == "es-ve") nul = "Venezuela";
 if (navigator.userLanguage == "es-co") nul = "Colombia";
 if (navigator.userLanguage == "es-pe") nul = "Perú";
 if (navigator.userLanguage == "es-ar") nul = "Argentina";
 if (navigator.userLanguage == "es-ec") nul = "Ecuador";
 if (navigator.userLanguage == "es-cl") nul = "Chile";
 if (navigator.userLanguage == "es-uy") nul = "Uruguay";
 if (navigator.userLanguage == "es-py") nul = "Paraguay";
 if (navigator.userLanguage == "es-bo") nul = "Bolivia";
 if (navigator.userLanguage == "es-sv") nul = "El Salvador";
 if (navigator.userLanguage == "es-hn") nul = "Honduras";
 if (navigator.userLanguage == "es-ni") nul = "Nicaragua";
 if (navigator.userLanguage == "es-pr") nul = "Puerto Rico";
 if (nul == "") document.write("Gracias por visitarnos.");
 else document.write("Gracias por visitarnos desde " + nul +".")
</script>
__________________

***Aprendiz de todo y maestro de nada***

Última edición por Kaopectate; 23/03/2003 a las 10:37
  #109 (permalink)  
Antiguo 19/02/2003, 11:27
Avatar de Kaopectate
Colaborador
 
Fecha de Ingreso: diciembre-2001
Ubicación: Curaçao (Antillas Holandesas)
Mensajes: 3.179
Antigüedad: 22 años, 3 meses
Puntos: 38
109.- Valores iniciales de un rango de fechas

P: ¿Como puedo asignar los valores iniciales a un rango de fechas?

R: [ver ejemplo]

Código PHP:
<html>
 <
head>
  <
script language="JavaScript">
  
   
// Funciones comunes a todos los métodos de selección

   
function padNmb(nStrnLensChr){
    var 
sRes String(nStr);
    for (var 
0nLen String(nStr).lengthi++)
     
sRes sChr sRes;
    return 
sRes;
   }

   function 
makeDateFormat(nDaynMonthnYear){
    var 
sRes;
    
sRes padNmb(nDay2"0") + "/" padNmb(nMonth2"0") + "/" padNmb(nYear4"0");
    return 
sRes;
   }
   
   function 
prevMonth(nMonth){
    return ((
nMonth 10) % 12) + 1;
   }

   function 
prevMonth_Year(nMonthnYear){
    return 
nYear - (((nMonth 10) % 12) + == 1210);
   }

   function 
lastDayOfMonth(nMonthnYear){
    var 
aMonth = new Array(312831303130313130313031);
    if ((
nMonth == 2) && (nYear == 0))
     return 
29;
    else
     return 
aMonth[nMonth 1];
   }

   function 
incDate(sFec0){
    var 
nDia parseInt(sFec0.substr(02), 10);
    var 
nMes parseInt(sFec0.substr(32), 10);
    var 
nAno parseInt(sFec0.substr(64), 10);
    
nDia += 1;
    if (
nDia lastDayOfMonth(nMesnAno)){
     
nDia 1;
     
nMes += 1;
     if (
nMes == 13){
      
nMes 1;
      
nAno += 1;
     }
    }
    return 
makeDateFormat(nDianMesnAno);
   }

   function 
decDate(sFec0){
    var 
nDia parseInt(sFec0.substr(02), 10);
    var 
nMes parseInt(sFec0.substr(32), 10);
    var 
nAno parseInt(sFec0.substr(64), 10);
    
nDia -= 1;
    if (
nDia == 0){
     
nMes -= 1;
     if (
nMes == 0){
      
nMes 12;
      
nAno -= 1;
     }
     
nDia lastDayOfMonth(nMesnAno);
    }
    return 
makeDateFormat(nDianMesnAno);
   }

   function 
addToDate(sFec0nInc){
    var 
nIncAbs Math.abs(nInc);
    var 
sRes sFec0;
    if (
nInc >= 0)
     for (var 
0nIncAbsi++) sRes incDate(sRes);
    else
     for (var 
0nIncAbsi++) sRes decDate(sRes);
    return 
sRes;
   }

   
// Funciones individuales de cada método de selección

   // Esta semana completa (Lun -> Dom)
   
function setDefaults1(oFromoTo){
    var 
dToday = new Date();
    var 
nDay dToday.getDate();
    var 
nMonth dToday.getMonth() + 1;
    var 
nYear dToday.getYear();
    var 
nDOW dToday.getDay();
    var 
sFirstDatesLastDate;

    if (
nDOW == 0nDOW 7;
    
sFirstDate addToDate(makeDateFormat(nDaynMonthnYear), -* (nDOW 1));
    
sLastDate addToDate(sFirstDate6);
    
oFrom.value sFirstDate;
    
oTo.value sLastDate;
   }

   
// Lo que va de esta semana (Lun -> Hoy)
   
function setDefaults2(oFromoTo){
    var 
dToday = new Date();
    var 
nDay dToday.getDate();
    var 
nMonth dToday.getMonth() + 1;
    var 
nYear dToday.getYear();
    var 
nDOW dToday.getDay();
    var 
sFirstDatesLastDate;

    if (
nDOW == 0nDOW 7;
    
sLastDate makeDateFormat(nDaynMonthnYear);
    
sFirstDate addToDate(sLastDate, -* (nDOW 1));
    
oFrom.value sFirstDate;
    
oTo.value sLastDate;
   }

   
// La semana pasada (Lun -> Dom)
   
function setDefaults3(oFromoTo){
    var 
dToday = new Date();
    var 
nDay dToday.getDate();
    var 
nMonth dToday.getMonth() + 1;
    var 
nYear dToday.getYear();
    var 
nDOW dToday.getDay();
    var 
sFirstDatesLastDate;

    if (
nDOW == 0nDOW 7;
    
sLastDate addToDate(makeDateFormat(nDaynMonthnYear), -nDOW);
    
sFirstDate addToDate(sLastDate, -6);
    
oFrom.value sFirstDate;
    
oTo.value sLastDate;
   }

   
// Los últimos siete días
   
function setDefaults4(oFromoTo){
    var 
dToday = new Date();
    var 
nDay dToday.getDate();
    var 
nMonth dToday.getMonth() + 1;
    var 
nYear dToday.getYear();
    var 
sFirstDatesLastDate;

    
sLastDate makeDateFormat(nDaynMonthnYear);
    
sFirstDate addToDate(sLastDate, -6);
    
oFrom.value sFirstDate;
    
oTo.value sLastDate;
   }

   
// Este mes completo
   
function setDefaults5(oFromoTo){
    var 
dToday = new Date();
    var 
nMonth dToday.getMonth() + 1;
    var 
nYear dToday.getYear();
    var 
sFirstDatesLastDate;

    
sFirstDate makeDateFormat(1nMonthnYear);
    
sLastDate makeDateFormat(lastDayOfMonth(nMonthnYear), nMonthnYear);
    
oFrom.value sFirstDate;
    
oTo.value sLastDate;
   }

   
// Lo que va de este mes
   
function setDefaults6(oFromoTo){
    var 
dToday = new Date();
    var 
nDay dToday.getDate();
    var 
nMonth dToday.getMonth() + 1;
    var 
nYear dToday.getYear();
    var 
sFirstDatesLastDate;

    
sFirstDate makeDateFormat(1nMonthnYear);
    
sLastDate makeDateFormat(nDaynMonthnYear);
    
oFrom.value sFirstDate;
    
oTo.value sLastDate;
   }

   
// El mes pasado
   
function setDefaults7(oFromoTo){
    var 
dToday = new Date();
    var 
nMonth dToday.getMonth() + 1;
    var 
nYear dToday.getYear();
    var 
sFirstDatesLastDate;

    
nYear prevMonth_Year(nMonthnYear);
    
nMonth prevMonth(nMonth);
    
sFirstDate makeDateFormat(1nMonthnYear);
    
sLastDate makeDateFormat(lastDayOfMonth(nMonthnYear), nMonthnYear);
    
oFrom.value sFirstDate;
    
oTo.value sLastDate;
   }

   
// Los últimos treinta días
   
function setDefaults8(oFromoTo){
    var 
dToday = new Date();
    var 
nDay dToday.getDate();
    var 
nMonth dToday.getMonth() + 1;
    var 
nYear dToday.getYear();
    var 
sFirstDatesLastDate;

    
sLastDate makeDateFormat(nDaynMonthnYear);
    
sFirstDate addToDate(sLastDate, -29);
    
oFrom.value sFirstDate;
    
oTo.value sLastDate;
   }

   
// Este año completo
   
function setDefaults9(oFromoTo){
    var 
dToday = new Date();
    var 
nYear dToday.getYear();
    var 
sFirstDatesLastDate;

    
sFirstDate makeDateFormat(11nYear);
    
sLastDate makeDateFormat(3112nYear);
    
oFrom.value sFirstDate;
    
oTo.value sLastDate;
   }

   
// Lo que va de este año
   
function setDefaults10(oFromoTo){
    var 
dToday = new Date();
    var 
nDay dToday.getDate();
    var 
nMonth dToday.getMonth() + 1;
    var 
nYear dToday.getYear();
    var 
sFirstDatesLastDate;

    
sFirstDate makeDateFormat(11nYear);
    
sLastDate makeDateFormat(nDaynMonthnYear);
    
oFrom.value sFirstDate;
    
oTo.value sLastDate;
   }

   
// El año pasado
   
function setDefaults11(oFromoTo){
    var 
dToday = new Date();
    var 
nYear dToday.getYear();
    var 
sFirstDatesLastDate;

    
sFirstDate makeDateFormat(11nYear 1);
    
sLastDate makeDateFormat(3112nYear 1);
    
oFrom.value sFirstDate;
    
oTo.value sLastDate;
   }

   
// Los últimos 365 días
   
function setDefaults12(oFromoTo){
    var 
dToday = new Date();
    var 
nDay dToday.getDate();
    var 
nMonth dToday.getMonth() + 1;
    var 
nYear dToday.getYear();
    var 
sFirstDatesLastDate;

    
sLastDate makeDateFormat(nDaynMonthnYear);
    
sFirstDate addToDate(sLastDate, -364);
    
oFrom.value sFirstDate;
    
oTo.value sLastDate;
   }

   function 
setDefaults(oFromoTonMeth){
    switch (
nMeth){
     case 
0
      
alert("");
      break;
     case 
1:
      
setDefaults1(oFromoTo);
      break;
     case 
2:
      
setDefaults2(oFromoTo);
      break;
     case 
3:
      
setDefaults3(oFromoTo);
      break;
     case 
4:
      
setDefaults4(oFromoTo);
      break;
     case 
5:
      
setDefaults5(oFromoTo)
      break;
     case 
6:
      
setDefaults6(oFromoTo)
      break;
     case 
7:
      
setDefaults7(oFromoTo)
      break;
     case 
8:
      
setDefaults8(oFromoTo)
      break;
     case 
9:
      
setDefaults9(oFromoTo)
      break;
     case 
10:
      
setDefaults10(oFromoTo)
      break;
     case 
11:
      
setDefaults11(oFromoTo)
      break;
     case 
12
      
setDefaults12(oFromoTo)
      break;
    }
   }

  
</script>
 </head>
 <body>
  <form name="formulario">
   <table border="0">
    <tr>
     <td colspan="2" style="font-family: helvetica; text-align: center; font-size: 12; font-weight: bold">
      VALORES DE INICIO DE UN RANGO DE FECHAS
     </td>
    </tr>
    <tr height="50">
     <td align="right">
      Tipo de rango:
     </td>
     <td>
      <select name="sel" onchange="setDefaults(document.formulario.fecha_desde, document.formulario.fecha_hasta, this.selectedIndex)">
       <option>...seleccione</option>
       <option>Esta semana completa</option>
       <option>Lo que va de esta semana</option>
       <option>La semana pasada</option>
       <option>Los últimos siete días</option>
       <option>Este mes completo</option>
       <option>Lo que va de este mes</option>
       <option>El mes pasado</option>
       <option>Los últimos treinta días</option>
       <option>Este año completo</option>
       <option>Lo que va de este año</option>
       <option>El año pasado</option>
       <option>Los últimos 365 días</option>
      </select>
     </td>
    </tr>
    <tr>
     <td align="right">
      Desde (dd/mm/yyyy):
     </td>
     <td>
      <input type="text" name="fecha_desde">
     </td>
    </tr>
    <tr>
     <td>
      Hasta (dd/mm/yyyy):
     </td>
     <td>
      <input type="text" name="fecha_hasta">
     </td>
    </tr>
   </table>
  </form>
 </body>
</html> 

Última edición por Kaopectate; 19/02/2003 a las 11:29
  #110 (permalink)  
Antiguo 20/02/2003, 13:30
Avatar de JavierB
Colaborador
 
Fecha de Ingreso: febrero-2002
Ubicación: Madrid
Mensajes: 25.052
Antigüedad: 22 años, 1 mes
Puntos: 772
110.- Imágenes en miniatura

P: ¿Como puedo poner miniaturas de mis imágenes sin tener que reducirlas con un editor gráfico?

R: Con este código:
Código PHP:
<html>
<
head>
<
script>
    function 
minifoto(foto,H,V,ancho,alto) {
        
propH ancho H;
        
propV alto V;
        if (
propH>propV) {
            
anchoF propV;
            
altoF alto;
        }
        else {
            
altoF propH;
            
anchoF ancho;
        }
        
de = (ancho anchoF) / 2;
        
su = (alto altoF) /2;
        
imagen="<div style='width:"+ancho+";height:"+alto+";border:1px outset'>";
        
imagen+="<img src='"+foto+"' widht="+anchoF+" height="+altoF;
        
imagen+=" style='position:relative; left:"+de+";top:"+su+"'>";
        
imagen+="</div>";
        
document.write(imagen);
    }
</script>
</head>

<body>
<script>
    minifoto("foto.jpg",399,291,90,80);
</script>
</body>
</html> 
A la función minifoto se pasan: el nombre de la imágen, el ancho y alto real de la imágen y el ancho y alto en el que se quiere poner la imágen. La función "encaja" la imágen en un recuadro manteniendo las proporciones.

Nota: Me recuerda el amigo Bravenap, que aunque la imágen aparece en tamaño reducido, se descarga completa, es decir, con su tamaño real, por lo que no supone reducción del tiempo de descarga. Deberá tenerse esto en cuenta si se quiere utilizar este código con imágenes muy grandes o con muchas imágenes.

Última edición por JavierB; 05/06/2003 a las 02:57
  #111 (permalink)  
Antiguo 21/02/2003, 11:39
Avatar de Kaopectate
Colaborador
 
Fecha de Ingreso: diciembre-2001
Ubicación: Curaçao (Antillas Holandesas)
Mensajes: 3.179
Antigüedad: 22 años, 3 meses
Puntos: 38
111.- Selector de año, mes y día

P: ¿Como puedo hacer un selector de fecha basado en tags <select> que considere permita seleccionar cualquier fecha válida hasta el día de hoy?

R: [ver ejemplo]

Código PHP:
<html>
 <
head>
  <
script language="JavaScript">

   var 
aMeses = new Array("Enero""Febrero""Marzo""Abril""Mayo""Junio""Julio""Agosto""Septiembre""Octubre""Noviembre""Diciembre")

   function 
padNmb(nStrnLensChr){
    var 
sRes String(nStr);
    for (var 
0nLen String(nStr).lengthi++)
     
sRes sChr sRes;
    return 
sRes;
   }

   function 
makeDateFormat(nDaynMonthnYear){
    var 
sRes;
    
sRes padNmb(nDay2"0") + "/" padNmb(nMonth2"0") + "/" padNmb(nYear4"0");
    return 
sRes;
   }
   
   function 
addOpt(oCntrliPossTxtsVal){
    var 
selOpcion = new Option(sTxtsVal);
    
oCntrl.options.add(selOpcioniPos);
   }

   function 
lastDayOfMonth(nMonthnYear){
    var 
aMonth = new Array(312831303130313130313031);
    if ((
nMonth == 2) && (nYear == 0))
     return 
29;
    else
     return 
aMonth[nMonth 1];
   }

   function 
cambia(nCambiado){
    var 
nAno;
    var 
nMes;
    
with (document.frm){
     
nAno parseInt(ano.options[ano.selectedIndex].value);
     switch (
nCambiado){
      case 
0:
       
llenaMes(mesnAno);
       break;
      case 
1:
       
nMes parseInt(mes.options[mes.selectedIndex].value);
       
llenaDia(dianAnonMes)
       break;
      case 
2:
       
nMes parseInt(mes.options[mes.selectedIndex].value);
       
nDia parseInt(dia.options[dia.selectedIndex].value);
       
res.value makeDateFormat(nDianMes 1nAno);
       break;
     }
    }
   }

   function 
llenaAno(oAno){
    var 
hoy = new Date();
    var 
ini 1960;
    
addOpt(oAno0"""");
    for (var 
ini<= hoy.getYear(); i++)
     
addOpt(oAnoini 1String(i), String(i));
   }

   function 
llenaMes(oMesnAno){
    var 
hoy = new Date();
    var 
nFin 11;
    while (
oMes.length 0oMes.remove(0);
    if (
nAno == hoy.getYear()) nFin hoy.getMonth();
    
addOpt(oMes0"""");
    for (var 
0<= nFini++)
     
addOpt(oMes1aMeses[i], String(i));
   }

   function 
llenaDia(oDianAnonMes){
    var 
hoy = new Date();
    var 
nFin lastDayOfMonth(nMes 1nAno);
    while (
oDia.length 0oDia.remove(0);
    if (
nAno == hoy.getYear() && nMes == hoy.getMonth()) nFin hoy.getDate();
    
addOpt(oDia0"""");
    for (var 
1<= nFini++)
     
addOpt(oDia1String(i), String(i));
   }

  
</script>
 </head>
 <body onload=" llenaAno(document.frm.ano)">
  <form name="frm">
   <table border="0">
    <tr>
     <td align="right">
      Año: 
     </td>
     <td>
      <select name="ano" onchange="cambia(0)" style="width: 80">
      </select>
     </td>
    </tr>
    <tr>
     <td align="right">
      Mes: 
     </td>
     <td>
      <select name="mes" onchange="cambia(1)" style="width: 80">
      </select>
     </td>
    </tr>
    <tr>
     <td align="right">
      Día: 
     </td>
     <td>
      <select name="dia" onchange="cambia(2)" style="width: 80">
      </select>
     </td>
    </tr>
    <tr>
     <td align="right">
      Fecha:
     </td>
     <td>
      <input type="text" name="res" disabled>
     </td>
    </tr>
   </table>
  </form>
 </body>
</html> 

Última edición por Kaopectate; 21/02/2003 a las 11:41
  #112 (permalink)  
Antiguo 22/02/2003, 03:24
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 21 años, 11 meses
Puntos: 1284
112. - Sonido antes de un salto

P: ¿Cómo escuchar un sonido antes de hacer un link?

R: Adaptando este script con los valores adecuados
ver ejemplo:

Código PHP:
<html>
<
head>
<
script>
function 
ReproducirYSaltar(sonretardosalto)    {
    if (
document.alldocument.all.sound.src son;
    
document.getElementById("sound2").src son;
    
setTimeout("salto('" salto "')"retardo);
}

function 
salto(x)    {
    
location.href x;
}
</script>
</head>
<body >
<bgsound id=sound style="visibility:hidden">
<embed id=sound2 hidden=true>
<a href="javascript:ReproducirYSaltar('UNDO.MID', 3000, 'http://www.sucaricatura.com' )" >
 Enlace de caricauras </a><br>
<a href="javascript:ReproducirYSaltar('UNDO.MID', 4000, 'http://www.pepemolina.com/postales' )" >
 Enlace de Postales digitales </a><br>
<a href="javascript:ReproducirYSaltar('UNDO.MID', 6000, 'http://www.pepemolina.com/visitas/visitas.php' )" >
 Firme en mi libro de visitas </a><br>
</body>
</html> 
Créditos: Se basa en un script original de chivi nº 71 de estas FAQs
... los parámetros que acepa son el fichero de sonido, el retardo que necesita para sonar y el destino del link

Saludos
  #113 (permalink)  
Antiguo 12/03/2003, 03:02
Avatar de Helbira  
Fecha de Ingreso: octubre-2001
Ubicación: Sevilla, España
Mensajes: 1.228
Antigüedad: 22 años, 5 meses
Puntos: 5
Información 115. Cerrar una ventana principal sin confirmación (II)

P: ¿Como puedo cerrar una ventana principal sin que aparezca ningún mensaje de confirmación?

R: [Ver ejemplo]

Consiste en engañar al navegador haciéndole creer que la estamos cerrando desde su opener.

TEMA: VENTANAS

Código PHP:
<html>
<
head>
<
script language="JavaScript">
 
function 
cerrar() {
var 
ventana window.self;
ventana.opener window.self;
ventana.close();
}
 
</script>
</head>
<body>
Problema:<br>
<a href="#" onClick="window.close()">
Cerrar ventana de modo tradicional (el navegador pedirá confirmación)
</a><br><br>
Solución:<br>
<a href="#" onClick="cerrar()">
Cerrar ventana sin confirmación
</a>
</body>
</html> 


P.D.: Popito ha comprobado que esto no funciona en IE5 para MAC. Ojo: Podría ocurrir también en otros navegadores.

P.D.2:LeandroEnrique comentaba que no le funciona en Mozilla asi que me he puesto a comprobarlo en varios navegadores. Concretamente en IE6, Netscape6.2,Opera7.23 y Mozilla Firefox. He de decir que en todos ellos ha funcionado el ejemplo que aparece en esta FAQ y a diferencia de IE6 en el resto de navegadores incluso el caso de un simple window.close() tampoco te pide confirmación.


Cita:
Iniciado por frodogus
Por favor, añadir en el apartado 115 Cerrar una ventana principal sin confirmación (II) no se admite en IE7

Saludos.

Última edición por tunait; 31/01/2007 a las 04:37
  #114 (permalink)  
Antiguo 12/03/2003, 23:45
 
Fecha de Ingreso: marzo-2003
Mensajes: 2
Antigüedad: 21 años
Puntos: 0
116.- Cambiar el texto de la barra de estado

P: ¿Como puedo cambiar el texto de la barra de estado?

R: Ver ejemplo

Código PHP:
<SCRIPT LANGUAGE="JavaScript">
<!--
var 
msg="TEXTO DE LA MARQUESINA"
var delay=30
var startPos=100
var timerID=null
var timerRunning=false
var pos=0
StartScrolling
()
function 
StartScrolling(){
    
StopTheClock()
    for (var 
0startPosi++) 
    
msg=" " msg
    DoTheScroll
()
}
function 
StopTheClock(){
    if(
timerRunning)
        
clearTimeout(timerID)
    
timerRunning=false
}
function 
DoTheScroll(){
    if (
pos msg.length)
        
self.status
    
msg.substring(posmsg.length);
    else
        
pos=-1;
    ++
pos
    timerRunning
=true
    timerID

   
self.setTimeout("DoTheScroll()"delay)
}
</script> 

Última edición por Kaopectate; 17/03/2003 a las 11:19
  #115 (permalink)  
Antiguo 18/03/2003, 15:56
Avatar de Kaopectate
Colaborador
 
Fecha de Ingreso: diciembre-2001
Ubicación: Curaçao (Antillas Holandesas)
Mensajes: 3.179
Antigüedad: 22 años, 3 meses
Puntos: 38
117.- Redondear un número

P: ¿Como puedo redondear un valor a una cierta cantidad de decimales?

Créditos: jordan

R: [ver ejemplo]

Código PHP:
<html>
 <
head>
  <
script language="JavaScript">
   function 
redondear(numdec){
    
num parseFloat(num);
    
dec parseFloat(dec);
    
dec = (!dec dec);
    return 
Math.round(num Math.pow(10dec)) / Math.pow(10dec);
   }

   function 
calcula(){
    
with (document.frm)
     
res.value redondear(val.valuedec.value);
   }
  
</script>
 <head>
 <body>
  <form name="frm">
   <table border="0">
    <tr>
     <td align="right">
      Numero:
     </td>
     <td>
      <input type="text" name="val"><br>
     </td>
    </tr>
    <tr>
     <td align="right">
      Decimales:
     </td>
     <td>
      <input type="text" name="dec"><br>
     </td>
    </tr>
    <tr>
     <td>
      &nbsp;
     </td>
     <td align="center">
      <input type="button" name="calc" value="Redondear" onclick="calcula()">
     </td>
    </tr>
    <tr>
     <td align="right">
      Resultado:
     </td>
     <td>
      <input type="text" name="res"><br>
     </td>
    </tr>
   </table>
  </form>
 </body>
</html> 
  #116 (permalink)  
Antiguo 27/03/2003, 10:15
Avatar de KarlanKas
Moderador extraterrestre
 
Fecha de Ingreso: diciembre-2001
Ubicación: Madrid
Mensajes: 6.987
Antigüedad: 22 años, 3 meses
Puntos: 61
118.- (me gustan los bizcochos) Buscador interno

P.-¿Cómo pongo un buscador interno en mi site?
R.- Siguiendo estos sencillos pasos:

Cómo instalar un buscador, el APB Search 1.12 (que es
gratuito)


Hay otra versión que es de pago con más características, pero
creo que esta basta y sobra para la mayoría. A mi modo de ver es
bastante bueno, aunque supongo que cada uno tendrá el de su
preferencia.

Pasos a seguir:

1.- Descargar el archivo apbsearch.zip
de apbsystems.com


2.- Dentro hay 5 archivos:
  • archive.cgi
  • readme11.txt
  • search.cgi
  • searchBottom.html
  • searchTop.html
Copiamos todos (salvo el txt) en el directorio CGI-BIN del servidor
donde tengamos alojada la página. Es importante que dicho
upload
se haga en modo texto (ver configuración de vuestro
programa FTP).

3.- Una vez subidos dais permisos (CHMOD) a los archivos
con extensión CGI (search y archive) de forma que quede como
en la imagen:




4.- Debes llamar, si no lo sabes, a tu proveedor de hosting
para preguntar la ruta absoluta dentro del servidor de tu página.

5.- Una vez hecho esto con el navegador ve a esta página:

http://www.tudominio.com/cgi-bin/archive.cgi

Tal vez el acceso a tu directorio de CGI sea otro, pregunta al
proveedor de tu hospedaje.

6.- si todo va bien pasa al punto 7, si no, si te sale un error
500 comprueba los permisos del archivo archive.cgi, comprueba
que lo has subido en modo texto. Si te dice que no lo encuentra
comprueba que la ruta es la correcta (ya os he dicho que la ruta
puede que no sea la puesta, hay hospedajes cuya ruta es
cgi.tudominio.com...).

7.- Aparecerá una página de diseño bastante discreto:

que te preguntará el dominio de la página, la ruta absoluta de la
misma dentro del servidor y la extensión de los archivos que
quieres indexar. Rellénalo como debas y dale a siguiente.

8.- Ahora debes seleccionar los directorios que quieres que
indexe. Fíjate que no está marcado un directorio que no
contenga archivos web (imágenes, scripts...).

9.- Por último des-selecciona los archivos que no quieras
que indexe (prueba3.html y cosas por el estilo que siempre se
quedan pululando).

10.- Si todo ha ido bien aparecerá una ventana
confirmando que ya está.

11.- Ve al directorio CGI-BIN de tu servidor y cambia los
permisos de el archivo archive.cgi a 600 para evitar que alguien
malintencionado te modifique la lista de archivos.

12.- Añade el siguiente código a la página de búsqueda:

Código:
<form action="/cgi-bin/search.cgi" method="get">
<input type="text" name="search" size=27>
<input type="submit">
</form>

13.- Editad los archivos searchTop.html y
searchBottom.html para dar una imagen a la página de
resultados acorde con vuestra página web.
Y ya está!!

Espero que os haya ayudado. Si no es así espero vuestras dudas.

Un saludo!

Me alegraría que si usas esta faq comentaras que es mía.
__________________
Cómo escribir

No hay pregunta tonta, sino tonto que quiere seguir en la ignorancia.

Última edición por KarlanKas; 04/01/2005 a las 11:43
  #117 (permalink)  
Antiguo 30/03/2003, 01:59
Avatar de caricatos
Moderador
 
Fecha de Ingreso: abril-2002
Ubicación: Torremolinos (Málaga)
Mensajes: 19.607
Antigüedad: 21 años, 11 meses
Puntos: 1284
119.- Reemplazar

P . - ¿Cómo reemplazar o eliminar subcadenas de una cadena?

R . - Combinando el método split para convertir una cadena en un array y join que hace lo contrario...
Poniendo como párámetro del split, lo que se quiere quitar, y en join la nueva subcadena (cadena vacía para eliminar)

Ejemplo:
var invertirBarra = "Hola/amigos/del/foro".split("/").join("\");

deja la variable invertirBarra = "Hola\amigos\del\foro";

Nota: Este sistema mejora el que propuse en otra discusión para insertar emoticones en un textarea

Saludos

Última edición por Kaopectate; 31/03/2003 a las 10:15
  #118 (permalink)  
Antiguo 15/04/2003, 11:06
Avatar de ferny
Il capo della mafia
 
Fecha de Ingreso: febrero-2002
Ubicación: Al final del cable
Mensajes: 10.080
Antigüedad: 22 años, 1 mes
Puntos: 55
120.- Link al MSN

P.- ¿Cómo puedo hacer un link en la web para agregar un contacto messenger?

R.- Puedes utilizar lo siguiente:
Código:
<OBJECT height='1' id='MsgrObj' width='1'></OBJECT>
<script>
function DoInstantMessage(person,screen)
{
	//Check if person has messenger installed
	try{MsgrObj.classid="clsid:B69003B3-C55E-4B48-836C-BC5946FC3B28";}
	catch(e){if(!(e.number && 2148139390) == 2148139390)return;}
	
	//Check if you are logged in
	if(MsgrObj.MyStatus == 1)
	{
		alert("You are not logged into Messenger.\nYou must login to Messenger before continuing.");
		return;
	}
	
	//Check if person is already in contact list
	try{var contact = MsgrObj.GetContact(person,"");}
	catch(e)
	{
		if((e.number && 2164261642) == 2164261642) //MSGR_E_USER_NOT_FOUND
		{
			if(confirm("Add "+screen+" to your contact list?")==true)MsgrObj.AddContact(0,person);
		}
	}
	
	//Ask to send an instant message
	if(confirm("Send "+screen+" an instant message?")==true)MsgrObj.InstantMessage(person);
}
</script>
Luego llamas a la función así:
Código:
<a href=javascript:DoInstantMessage("[email protected]","nombre")>Messenger</a>
O bien usa una imagen como enlace.

IMPORTANTE: sólo funciona en Internet Explorer.

Créditos: mods de phpBB - MSN Messenger Mod
__________________
www.mundodivx.com || www.mundodivx.org

Pon tu mano en un horno caliente durante un minuto y te parecerá una hora.
Siéntate junto a una chica preciosa durante una hora y te parecerá un minuto.
Eso es la relatividad.
  #119 (permalink)  
Antiguo 28/04/2003, 04:10
Avatar de KarlanKas
Moderador extraterrestre
 
Fecha de Ingreso: diciembre-2001
Ubicación: Madrid
Mensajes: 6.987
Antigüedad: 22 años, 3 meses
Puntos: 61
121. Barra personalizada de scroll

P.- ¿Cómo hacer una barraa de scroll personalizada con los iconos formas y colores que quiera?
R.- Por medio de este script:
(Compatible con Opera 7, NS 6.2 y IE 5.0)

Código PHP:

<html>
<
head>
    <
title>Barra de desplazamiento</title>
    <
script>
//Script original de KarlanKas para Forosdelweb.com


//Muchas gracias a todos los que colaboraron en la elaboración de este script, en especial a JavierB, artífice de la compatibilidad del mismo con NS. 

    
ancho=700;
    
altoVentana=300;
    
altoContenido=700;
    
altoBoton=20;
    
anchoBoton=15;
    
incremento=5;
    
//    ---------------------------NO EDITAR--------------------------------
    
recorrido=altoVentana-(2*altoBoton)
    
altoBarra=recorrido*(altoVentana/altoContenido);
    
recorridoBarra=recorrido-altoBarra;
    
incrementoBarra=incremento*(recorridoBarra/(altoContenido-altoVentana));
    
recorridoAcumuladoBarra=0;
    
recorridoAcumuladoContenido=0;
    
anchoContenido=ancho-anchoBoton;
    
no=false;
    var 
yy=0;
    
pulsado=false;
    var 
mouseY;
    
    if (
altoVentana>=altoContenido){no=true}
    
altoBarra+=incrementoBarra+1
    
    
    
    
    estilo
='<style>';
    
estilo+='#ventana{'
    
estilo+='            height:'+altoVentana+'px;';
    
estilo+='            width:'+ancho+'px;';
    
estilo+='               z-index:1;';
    
estilo+='            border:solid 1px black;';
    
estilo+='            overflow:hidden;';
    
estilo+='            position:relative;';
    
    
estilo+='}'
    
    
    
    
estilo+='#botonArriba{        position:absolute;';
    
estilo+='                    padding:0px 0px 0px 0px;';
    
estilo+='                    font:normal 8px/8px courier;';
    
estilo+='                    top:0px;';
    
estilo+='                    width:'+anchoBoton+'px;';
    
estilo+='                    height:'+altoBoton+'px;';

    
estilo+='                       z-index:99;';
    
estilo+='                       cursor:hand;';
    
estilo+='                       left:'+(ancho-anchoBoton)+'px;';
    
estilo+='    }'
    
estilo+='#botonAbajo{        position:absolute;';
    
estilo+='                    padding:0px 0px 0px 0px;';
    
estilo+='                    font:normal 9px/9px courier;';
    
estilo+='                    width:'+anchoBoton+'px;';
    
estilo+='                    height:'+altoBoton+'px;';
    
estilo+='                    top:'+(altoVentana-altoBoton)+'px;';
    
estilo+='                       left:'+(ancho-anchoBoton)+'px;';
    
estilo+='                       z-index:99;';
    
estilo+='                       cursor:hand;';
    
estilo+='}';
    
estilo+='</style>';    
    
    
estiloContenido='style="';
     
estiloContenido+='            width:'+(anchoContenido)+'px;';
    
estiloContenido+='            padding:10px 10px 10px 10px;';
    
estiloContenido+='            font:normal 10px/15px verdana;';
    
estiloContenido+='            position:absolute;';
    
estiloContenido+='            top:0px;'

    
estiloContenido+='            left:0px;'
    
estiloContenido+='            background:#ffffcc;';
    
estiloContenido+='            border-right:solid black 1px;';
     
estiloContenido+='            height:'+altoContenido+'px;'
;
    
estiloContenido+='            overflow:hidden;';
    
estiloContenido+='            text-align:justify;"';    
    
    
estiloBarra='style="position:absolute;';
    
estiloBarra+='                    width:'+anchoBoton+'px;';
    
estiloBarra+='                    position:absolute;';
    
estiloBarra+='                    top:'+altoBoton+'px;';
    
estiloBarra+='                       z-index:99;';
    
estiloBarra+='                       cursor:hand;';
    
estiloBarra+='                       left:'+(ancho-anchoBoton)+'px;';
    if (
no){estiloBarra+='            visibility:hidden;';}
    
estiloBarra+='                    height:'+altoBarra+'px;"';



    
document.write(estilo);

</script>


    

    <script for="ventana" event="onmousewheel">
    if(document.all){mover(event.wheelDelta/30)}
    </script>
    <script >
    function ratonAbajo(){
    
    if (document.all){yy=event.clientY;}
    else{yy = coorY; }
    pulsado=true;}
    </script>
    <script>

function mover(hacia){

    nB=parseInt(document.getElementById("barra").style.top);
    nC=parseInt(document.getElementById("contenido").style.top);


if (((nC+(hacia*incremento))<incremento) && (nC+(hacia*incremento)>(altoVentana-altoContenido))){
recorridoAcumuladoBarra-=(hacia*incrementoBarra);
recorridoAcumuladoContenido+=(hacia*incremento);
    
if(recorridoAcumuladoContenido>0){recorridoAcumuladoContenido=0}
if(recorridoAcumuladoBarra<altoBoton){recorridoAcumuladoBarra=altoBoton}
if(recorridoAcumuladoBarra> (recorridoBarra+altoBoton)){recorridoAcumuladoBarr
a=recorridoBarra+altoBoton}
    
    document.getElementById("contenido").style.top=recorridoAcumuladoContenido;
    document.getElementById("barra").style.top=recorridoAcumuladoBarra;
    
    }}

    
function ratonMoviendose(){
if(pulsado){
            if (document.all){y=event.clientY;}
else{
    y = coorY; }
yy=yy-y;
yyy=yy/incrementoBarra;
mover(yyy);
yy=y;
}}
    function seVa(){
    pulsado=false;
    
    }
    </script>
</head>

<body>
<div     id="ventana">        
        <script>
        document.write('<div id="contenido" '+estiloContenido+'>');
        </script>
                
1 Texto<br>
2 Texto<br>
3 Texto<br>
4 Texto<br>
5 Texto<br>
6 Texto<br>
7 Texto<br>
8 Texto<br>
9 Texto<br>
10 Texto<br>
-----------------------------------------<br>
11 Texto<br>
12 Texto<br>
13 Texto<br>
14 Texto<br>
15 Texto<br>
16 Texto<br>
17 Texto<br>
18 Texto<br>
19 Texto<br>
20 Texto<br>
-----------------------------------------------------
------------------------------------------------------
-----------------------------------------------------
---------------------------</br>
21 Texto<br>
22 Texto<br>
23 Texto<br>
24 Texto<br>
25 Texto<br>
26 Texto<br>

        </div>
        <input type="button"
                value="?"
                id="botonArriba"
                onMouseOver="pepe22=window.setInterval('mover(1)',20)"
                onMouseOut="window.clearInterval(pepe22)">
        
        <input type="button"
                value="?"
                id="botonAbajo"
                onMouseOver="if(no==false){pepe22=window.setInterval('mover(-1)',20)}"
                onMouseOut="if(!no){window.clearInterval(pepe22)}"
                >
        
        <script>
        document.write('<input type="button"');
        document.write(' id="barra"  onMouseDown="ratonAbajo()"');
        document.write('  onMouseMove="ratonMoviendose()"');
        document.write('   onMouseUp="seVa()" onMouseOut="seVa()" ');
        document.write(estiloBarra);
        document.write(' >');
        
//----------------------RATON EN NS-------------------------------
document.onmousemove = mouseMove;
var ns6 = (document.getElementById && !document.all) ? true: false;
var coorY;
if (ns6) document.getElementById('barra').addEventListener("mousemove", mouseMove, true)
function mouseMove(e)
{
if (ns6)    {coorY = e.pageY;}
return true;
}
</script>
</div>
</body>
</html> 
__________________
Cómo escribir

No hay pregunta tonta, sino tonto que quiere seguir en la ignorancia.

Última edición por KarlanKas; 04/01/2005 a las 11:44
  #120 (permalink)  
Antiguo 28/04/2003, 05:53
Avatar de KarlanKas
Moderador extraterrestre
 
Fecha de Ingreso: diciembre-2001
Ubicación: Madrid
Mensajes: 6.987
Antigüedad: 22 años, 3 meses
Puntos: 61
122.- Cómo poner un reloj analógico en mi web

P.- Cómo poner un reloj analógico en mi web.
R.- En realidad este post es un ejemplo de como manejar grados con JS. Para ello he hecho este relojillo en el que es la hora, son los segundos y los minutos.

Caricatos (hola campeón!!) tiene un ejemplo mucho más completo aunque tal vez un poco más complicado (por lo completo que es).

Lo he modificado un poco... ahora tiene manecillas!

11/11/2004
Lo he vuelto a modificar. Ahora es compatible con Mozilla, Firefox, Opera 7...

[ver ejemplo]

Ahí va!


Código PHP:
<html>
<
head>
<
title>Reloj analogico</title>
<
script>
//Script original de KarlanKas para Forosdelweb.com


var codigo="";
var 
incremento=-1
var radio=110
var radio2=100
radianes
=(2*3.141592/360)

function 
crear(nombr,radi,hor,destin){
this.nombre=nombr;
this.radio=radi;
this.hora=hor;
this.destino=destin;
}

manecillas=new Array();
manecillas[0]=new crear("segundero",1,"segundo","http://www.forosdelweb.com/images/smilies/dedosabajo.gif");
manecillas[1]=new crear("minutero",0.8,"minuto","http://www.forosdelweb.com/images/smilies/dedosarriba.gif");
manecillas[2]=new crear("horero",0.5,"hora","http://www.forosdelweb.com/images/smilies/wink.gif");

// -------------- DIBUJAR MANECILLAS ---------------------------
for(numeroIconos=0;numeroIconos<5;numeroIconos++){
for(
cadaManecilla=0;cadaManecilla<3;cadaManecilla++){
codigo+='<img id="'+manecillas[cadaManecilla].nombre+numeroIconos+'" style="z-index:2;position:absolute;top:-300px;" src="'+manecillas[cadaManecilla].destino+'">\n'}
}
//----------- PONER EL CENTRO DE LA ESFERA---------------------------------

codigo+='<img style="z-index:4;position:absolute;top:110px;left:110px;" src="http://www.forosdelweb.com/images/smilies/smile.gif">'

//------------- DIBUJAR ESFERA --------------------------
for(numero=0;numero<=359;numero+=30){
x=Math.floor((radio2)*Math.cos(radianes*numero));
y=Math.floor((radio2)*Math.sin(radianes*numero));
document.write('<img src="http://www.forosdelweb.com/images/smilies/risa.gif" style="position:absolute;left:'+(radio+x)+'px;top:'+(radio+y)
+
'px">');
}

//------------------ MAQUINARIA DEL RELOJ --------------

function reloj(){

//-------------SABER LA HORA----------------
ahora=new Date();

document.title=ahora.toLocaleString()

segundo=ahora.getSeconds()*6
minuto
=ahora.getMinutes()*6
hora
=(ahora.getHours()*30)

hora+=(minuto/12)

//---------PONER 0 GRAD0S EN 90 GRADOS---------------
hora-=90;
minuto-=90;
segundo-=90

//-------MOVER LAS MANECILLAS---------------

for (a=0;a<99;a=a+20){
incremento++
for (
m=0;m<3;m++){
manecilla=document.getElementById(manecillas[m].nombre+incremento);
eval(
"cosa="+manecillas[m].hora);
x=a*manecillas[m].radio*Math.cos(radianes*cosa);
y=a*manecillas[m].radio*Math.sin(radianes*cosa);
manecilla.style.left=x+radio+'px';
manecilla.style.top=y+radio+'px';

}
}
incremento=-1;
}

</script>
</head>

<body onload='reloj();window.setInterval("reloj()",50)'>

<script>document.write(codigo)</script>

</body>
</html> 
__________________
Cómo escribir

No hay pregunta tonta, sino tonto que quiere seguir en la ignorancia.

Última edición por KarlanKas; 04/01/2005 a las 11:46
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Tema Cerrado

SíEste tema le ha gustado a 103 personas (incluyéndote)




La zona horaria es GMT -6. Ahora son las 09:15.