Foros del Web » Programando para Internet » Javascript »

llamar a una parte de codigo que tengo en un .js

Estas en el tema de llamar a una parte de codigo que tengo en un .js en el foro de Javascript en Foros del Web. Hola necesito ayuda Vereis tengo un codigo que me visualiza la hora en mi pagina y funciona correctamente y es el siguiente: <head> <meta http-equiv="Content-Type" ...
  #1 (permalink)  
Antiguo 12/01/2011, 18:26
 
Fecha de Ingreso: enero-2011
Mensajes: 16
Antigüedad: 13 años, 3 meses
Puntos: 1
llamar a una parte de codigo que tengo en un .js

Hola necesito ayuda

Vereis tengo un codigo que me visualiza la hora en mi pagina y funciona correctamente y es el siguiente:

<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Documento sin título</title>

<script language="JavaScript">
function hora(){
var fecha = new Date()
var hora = fecha.getHours()
var minuto = fecha.getMinutes()
var segundo = fecha.getSeconds()
if (hora < 10) {hora = "0" + hora}
if (minuto < 10) {minuto = "0" + minuto}
if (segundo < 10) {segundo = "0" + segundo}
var horita = hora + ":" + minuto + ":" + segundo
document.getElementById('hora').firstChild.nodeVal ue = horita
tiempo = setTimeout('hora()',1000)
}
function inicio(){
document.write('<span id="hora">')
document.write ('000000</span>')
hora()
}
</script>
</head>

<body>

<table width="150" border="1">
<tr>
<td height="25" align="center">
<script type="text/javascript">inicio()</script></td> </tr>
</table>

</body>
</html>

El problema es que quiero empaquetar el código que esta en azul en un archivo aparte que llamare Hora.js, para ello corto el código que esta en azul y lo pego en un archivo aparte que llamo Hora.js y lo guardo en la carpeta "Recursos", hasta aqui creo que lo hago bien ya que anteriormente lo he hecho con otros codigos.

Ahora viene el problema cuando lo llamo desde mi página ya no uso logicamente el código que esta en rojo uso este otro que pongo a continuación:
<script type="text/javascript" src="Recursos/Hora.js"></script>
El problema es que a este código le falta algo creo que es el parametro que pone inicio() pero ese es mi problema no se como se pone ni se como puedo hacer para que funcione.

Si alguien me puede ayudar le estaria muy agradecido.

Gracias
  #2 (permalink)  
Antiguo 12/01/2011, 19:05
Avatar de Tecktonikrazy  
Fecha de Ingreso: enero-2010
Mensajes: 224
Antigüedad: 14 años, 3 meses
Puntos: 3
Respuesta: llamar a una parte de codigo que tengo en un .js

No tendrias que poner esto al final del codigoo azul?

window.onload = inicio;
__________________
I LOVE HTML (How To Make Love)
  #3 (permalink)  
Antiguo 13/01/2011, 11:56
 
Fecha de Ingreso: enero-2011
Mensajes: 16
Antigüedad: 13 años, 3 meses
Puntos: 1
Respuesta: llamar a una parte de codigo que tengo en un .js

Cita:
Iniciado por Tecktonikrazy Ver Mensaje
No tendrias que poner esto al final del codigoo azul?

window.onload = inicio;

Gracias por tu respuesta pero funciona a medias, tengo que decirte que el código que puse forma parte de una página con mas cosas y te digo de que funciona a medias porque:
1) Con la modificación que me indicas visualiza la hora pero la parte que marca los segundos se queda parado no se actualiza lo visualiza pero el reloj esta inmovil no cambia.

2) Y MAS IMPORTANTE no se visualiza nada del resto de la página solo se visualiza el reloj parado, el resto de la página aparece en blanco

Así que esta no es la solución a mi problema.

Espero que si a tí no se te ocurre nada alguien me pueda ayudar ya que estoy intentandolo por mis medios y no encuentro la información que preciso.

Muchas gracias a todos.
  #4 (permalink)  
Antiguo 13/01/2011, 13:00
Avatar de Tecktonikrazy  
Fecha de Ingreso: enero-2010
Mensajes: 224
Antigüedad: 14 años, 3 meses
Puntos: 3
Respuesta: llamar a una parte de codigo que tengo en un .js

No se ve el resto de la pagina por que usas document.write() lo cual sobreescribe el codigo de todo el documento y lo sustituye por lo que indicaste. Modifique tu codigo un poco y si funciono, esto es lo que hice, espero haber ayudado

<script type="text/javascript">
function hora(){
var fecha = new Date()
var hora = fecha.getHours()
var minuto = fecha.getMinutes()
var segundo = fecha.getSeconds()
if (hora < 10) {hora = "0" + hora}
if (minuto < 10) {minuto = "0" + minuto}
if (segundo < 10) {segundo = "0" + segundo}
var horita = hora + ":" + minuto + ":" + segundo
document.getElementById('hora').firstChild.nodeValue = horita
tiempo = setTimeout('hora()',1000)
}

function inicio(){
document.getElementById('reloj').innerHTML = '<span id="hora">000000</span>';
hora();
}

window.onload = inicio;
</script>


<table width="150" border="1">
<tr>
<td id="reloj" height="25" align="center"></td>
</table>


Si te das cuenta agregue un id al td de la tabla para que se pueda agregar el span id="hora" con innerHTML
__________________
I LOVE HTML (How To Make Love)

Última edición por Tecktonikrazy; 13/01/2011 a las 13:10
  #5 (permalink)  
Antiguo 13/01/2011, 13:49
 
Fecha de Ingreso: enero-2011
Mensajes: 16
Antigüedad: 13 años, 3 meses
Puntos: 1
Respuesta: llamar a una parte de codigo que tengo en un .js

GENIAL muchas gracias, funciona perfecto y me has ayudado mucho.
Veras soy una persona que estoy aprendiendo a hacer paginas web pero como hay muchas cosas que se tienen que mezclar para hacer una buena página web (flash, Javascript, Html, CSS ) etc... y yo ya no soy joven pues me cuesta bastante mas que a otros pero me voy defendiendo y voy haciendome mi pagina que por cierto funciona perfectamente pero a la que pretendo quitarle cosas y ponerlas aparte para que el código sea mas legible y corto y la verdad es que aunque me lo curro sin vuestra ayuda me seria imposible de nuevo gracias.
Quiero decirte que tengo el mismo problema con el apartado fechas el codigo es distinto y no se si sere capaz de resolverlo por mi mismo pero lo intentare de todas formas te lo pongo aqui por si quieres echarle un vistazo ya que no quiero abusar de tu amabilidad.
MUCHAS GRACIAS POR TODO.

*********Código colocado en un js ***********

function fecha(){
fecha = new Date()
mes = fecha.getMonth()
diaMes = fecha.getDate()
diaSemana = fecha.getDay()
anio = fecha.getFullYear()
dias = new Array('Domingo','Lunes','Martes','Miercoles','Juev es','Viernes','Sábado')
<!--meses = new Array('Enero','Febrero','Marzo','Abril','Mayo','Ju nio','Julio','Agosto','Septiembre','Octubre','Novi embre','Diciembre')-->
meses = new Array('01','02','03','04','05','06','07','08','09' ,'10','11','12')
document.write('<span id="fecha">')
document.write (diaMes + "-" + meses[mes] + "-" + anio)
document.write ('</span>')
}

function MM_preloadImages() { //v3.0
var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

************************************

********Código que coloco en el body donde quiero que aparezca la fecha*****

<table width="150" border="1">
<tr>
<td height="25" align="center">
<script type="text/javascript" src="FechayHora/Fecha.js"></script>
</td>
</tr>
</table>

************************************************** **************
  #6 (permalink)  
Antiguo 13/01/2011, 21:30
Avatar de Tecktonikrazy  
Fecha de Ingreso: enero-2010
Mensajes: 224
Antigüedad: 14 años, 3 meses
Puntos: 3
Respuesta: llamar a una parte de codigo que tengo en un .js

Aqui esta:

<script type="text/javascript">
function fecha(){
fecha = new Date()
mes = fecha.getMonth()
diaMes = fecha.getDate()
diaSemana = fecha.getDay()
anio = fecha.getFullYear()
dias = new Array('Domingo','Lunes','Martes','Miercoles','Juev es','Viernes','Sábado')
meses = new Array('01','02','03','04','05','06','07','08','09' ,'10','11','12')
document.getElementById('contenedor').innerHTML='<span id="fecha">'+diaMes + "-" + meses[mes] + "-" + anio+'</span>';
}

function MM_preloadImages() { //v3.0
var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

window.onload = fecha;
</script>


<table width="150" border="1">
<tr>
<td id="contenedor" height="25" align="center">
</td>
</tr>
</table>


Es exactamente el mismo problema, usa innerHTML y da un id al TD, llama a la funcion con window.onload
__________________
I LOVE HTML (How To Make Love)
  #7 (permalink)  
Antiguo 14/01/2011, 02:21
 
Fecha de Ingreso: enero-2011
Mensajes: 16
Antigüedad: 13 años, 3 meses
Puntos: 1
Respuesta: llamar a una parte de codigo que tengo en un .js

Hola, gracias por tu ayuda funcionan los 2 perfectamente PERO POR SEPARADO, JUNTOS SOLO FUNCIONA UNO DE ELLOS. Me explico los 2 se encuentran en la misma página (fecha y Hora ) pero en lugares separados por eso cuando los llamo lo hago desde 2 tablas distintas, y como te digo al principio solo funciona 1, si anulo uno de ellos el otro funciona pero los 2 a la vez en la misma página NO FUNCIONAN. No te pongo los (.js) porque son los que tu me has puesto en las anteriores respuestas, lo he probado en una página nueva por si fuese algún código que estuviera en el resto de mi página y creara un conflicto pero no es ese el problema.
Disculpa si estoy abusando de tu amabilidad y de tu tiempo pero siendo como es un código tan corto me enfado conmigo mismo al no poder encontrar donde se encuentra el problema, debo estar haciendome viejo.

*********************Tabla primera **********
<table width="150" border="1">
<tr>
<td id="reloj" height="25" align="center">
<script type="text/javascript" src="FechayHora/Hora.js"></script>
</td>
</tr>
</table>
*********************************************

*********************Tabla segunda ************

<table width="150" border="1">
<tr>
<td id="contenedor" height="25" align="center">
<script type="text/javascript" src="FechayHora/Fecha.js"></script>
</td>
</tr>
</table>
*************************************************

Bueno espero que no te molestes conmigo por abusar de tu ayuda.
MUCHAS GRACIAS, un saludo.
  #8 (permalink)  
Antiguo 14/01/2011, 09:24
Avatar de Tecktonikrazy  
Fecha de Ingreso: enero-2010
Mensajes: 224
Antigüedad: 14 años, 3 meses
Puntos: 3
Respuesta: llamar a una parte de codigo que tengo en un .js

En lugar de usar:

window.onload = inicio;
window.onload = fecha;

Usa una sola vez:

window.onload = function(){inicio();fecha();}


<script type="text/javascript">
function hora(){
var fecha = new Date()
var hora = fecha.getHours()
var minuto = fecha.getMinutes()
var segundo = fecha.getSeconds()
if (hora < 10) {hora = "0" + hora}
if (minuto < 10) {minuto = "0" + minuto}
if (segundo < 10) {segundo = "0" + segundo}
var horita = hora + ":" + minuto + ":" + segundo
document.getElementById('hora').firstChild.nodeValue = horita
tiempo = setTimeout('hora()',1000)
}

function inicio(){
document.getElementById('reloj').innerHTML = '<span id="hora">000000</span>';
hora();
}

function fecha(){
fecha = new Date()
mes = fecha.getMonth()
diaMes = fecha.getDate()
diaSemana = fecha.getDay()
anio = fecha.getFullYear()
dias = new Array('Domingo','Lunes','Martes','Miercoles','Juev es','Viernes','Sábado')
meses = new Array('01','02','03','04','05','06','07','08','09' ,'10','11','12')
document.getElementById('contenedor').innerHTML='<span id="fecha">'+diaMes + "-" + meses[mes] + "-" + anio+'</span>';
}

function MM_preloadImages() { //v3.0
var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

window.onload = function(){inicio();fecha();}
</script>


<table width="150" border="1">
<tr>
<td id="reloj" height="25" align="center"></td>
</table>

<table width="150" border="1">
<tr>
<td id="contenedor" height="25" align="center">
</td>
</tr>
</table>
__________________
I LOVE HTML (How To Make Love)
  #9 (permalink)  
Antiguo 14/01/2011, 14:52
 
Fecha de Ingreso: enero-2011
Mensajes: 16
Antigüedad: 13 años, 3 meses
Puntos: 1
Respuesta: llamar a una parte de codigo que tengo en un .js

MUCHAS GRACIAS, FUNCIONAN PERFECTAMENTE.

Me gustaria poder ayudar a otras personas como lo has hecho tu conmigo pero esta claro que en esto del Javascript lo tengo un poco dificil, no obstante si puedo hacer algo por ti en cualquier otra cosa o materia me encantaria, como no se si puedo darte a traves de este foro mi correo de momento no lo pondre aqui pero si hay alguna manera de hacertelo saber me lo dices y te lo dare.

MUCHAS GRACIAS. Un saludo.
  #10 (permalink)  
Antiguo 14/01/2011, 15:27
Avatar de Tecktonikrazy  
Fecha de Ingreso: enero-2010
Mensajes: 224
Antigüedad: 14 años, 3 meses
Puntos: 3
Respuesta: llamar a una parte de codigo que tengo en un .js

gracias a ti. tambien ayudando a otros se aprende =)
__________________
I LOVE HTML (How To Make Love)

Etiquetas: js, llamar
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.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:07.