PDA

Ver la versión completa : JavaScript en html???



Angelyn
16/10/2007, 21:59
Puedo agregar un codigo en JavaScript al html?
Nomás eso, es que he intentado agregar algunos codigos y no puedo.

Arielo
17/10/2007, 07:21
Hola, Angelyn...

Sí, claro que se puede.
De hecho, hay más de una forma de hacerlo...
Por ejemplo, dentro de las etiquetas BODY:

Este ejemplo, inhabilita el botón derecho del mouse...

<script language="Javascript">
<!-- Begin
Document.OnContextMenu = Function(){Return False}
// End -->
</script>


Para agregar un enlace a un archivo externo:

<script type="text/javascript" src="[URL]">


Otra forma, es declarar la función, y utilizarla cuando la necesites:


Ejemplo: Redireccionar al usuario en base a cookies (los dos códigos siguientes, forman parte del mismo ejemplo)

Esto va dentro de las etiquetas HEAD:

<script type="text/javascript">
<!-- creado por: ronnie t. moore -->
<!-- begin
var expdays = 30;
var exp = new date();
exp.settime(exp.gettime() + (expdays*24*60*60*1000));

function getcookieval (offset) {
var endstr = document.cookie.indexof (";", offset);
if (endstr == -1)
endstr = document.cookie.length;
return unescape(document.cookie.substring(offset, endstr));
}
function getcookie (name) {
var arg = name + "=";
var alen = arg.length;
var clen = document.cookie.length;
var i = 0;
while (i < clen) {
var j = i + alen;
if (document.cookie.substring(i, j) == arg)
return getcookieval (j);
i = document.cookie.indexof(" ", i) + 1;
if (i == 0) break;
}
return null;
}
function setcookie (name, value) {
var argv = setcookie.arguments;
var argc = setcookie.arguments.length;
var expires = (argc > 2) ? argv[2] : null;
var path = (argc > 3) ? argv[3] : null;
var domain = (argc > 4) ? argv[4] : null;
var secure = (argc > 5) ? argv[5] : false;
document.cookie = name + "=" + escape (value) +
((expires == null) ? "" : ("; expires=" + expires.togmtstring())) +
((path == null) ? "" : ("; path=" + path)) +
((domain == null) ? "" : ("; domain=" + domain)) +
((secure == true) ? "; secure" : "");
}
function deletecookie (name) {
var exp = new date();
exp.settime (exp.gettime() - 1);
var cval = getcookie (name);
document.cookie = name + "=" + cval + "; expires=" + exp.togmtstring();
}

var favorite = getcookie('animal');

if (favorite != null) {
switch (favorite) {
case 'cat' : url = 'cat.html'; // change these!
break;
case 'dog' : url = 'dog.html';
break;
case 'gerbil' : url = 'gerbil.html';
break;
case 'gopher' : url = 'gopher.html';
break;
}
window.location.href = url;
}
// end -->
</script>

... y esto dentro de las etiquetas BODY:

<center>
<form>
<table>
select your favorite pet:<br>
<input type=checkbox name="cat" onclick="setcookie('animal', this.name, exp);">cat

<input type=checkbox name="dog" onclick="setcookie('animal', this.name, exp);">dog

<input type=checkbox name="gerbil" onclick="setcookie('animal', this.name, exp);">gerbil

<input type=checkbox name="gopher" onclick="setcookie('animal', this.name, exp);">gopher

</td>
</table>
</form>
</center>




Saludos!!
Suerte...

Angelyn
17/10/2007, 16:26
Hola arielo, gracias por la respuesta, pero ya sabia que van dentro de las estiquetas de body, pero no sé. Te doy el ejemplo que hago yo y despues me dices si es correcto o no:

<body form name="Tick">
es esto correcto??? Lo que quiero insertar es un reloj digital, y este es el codigo que me dan:

<!-- Colocar en la etiqueta <BODY> -->

<form name="Tick">
<input type="text" size="11" name="Clock">
</form>
<script>
<!--
/*By George Chiang (WA's JavaScript tutorial)

Credit must stay intact for use*/
function show(){
var Digital=new Date()
var hours=Digital.getHours()
var minutes=Digital.getMinutes()
var seconds=Digital.getSeconds()
var dn="AM"
if (hours>12){
dn="PM"
hours=hours-12
}
if (hours==0)
hours=12
if (minutes<=9)
minutes="0"+minutes
if (seconds<=9)
seconds="0"+seconds
document.Tick.Clock.value=hours+":"+minutes+":"
+seconds+" "+dn
setTimeout("show()",1000)
}
show()
//-->
</script>
no me sale, algo estoy haciendo mal, hasta he puesto esto del principio para ver si asi me salia, jjajajaja.

<!-- Colocar en la etiqueta <BODY> -->
Si sabes como, dime porfa. :wink:

Arielo
17/10/2007, 16:41
... No le veo nada de malo al código, debería funcionarte así como está ...

Esto lo podés borrar tranquila:

<!-- Colocar en la etiqueta -->
En cuanto a si está correcto lo primero que colocás:

<body form name="Tick">
sí, es correcto, aunque innecesario, puesto que debajo colocas

<form name = "Tick">
así que podés borrarlo tranquila...

Si utilizás FrontPage, lo que podés hacer es:
Copiar todo el código fuente, y estando en el modo "Normal", hacés un clic con el botón derecho en cualquier parte de la pantalla.
Seleccioná la opción "Pegado especial...", y luego, de entre las opciones que se te muestran, elige "Tratar como HTML"
Es otra forma de colocar el código dentro de las etiquetas BODY....

Angelyn
17/10/2007, 18:40
jejejje, perdon, me podrias dar un ejemplo de como colocar el codigo sin utilizar FrontPage :-P . no quiso conmigo :cry:

Arielo
17/10/2007, 18:48
jejejeje.....
Podés copiar todo el texto de abajo en cualquier editor de texto, y lo grabás como archivo de texto con extensión .HTM
Después, sólo tenés que abrir ese archivo con el Firefox (o, en su defecto, Internet Explorer) para probarlo...
O podés abrirlo con el Frontpage, para editarlo...

Este es el texto que tenés que copiar:

<html>
<head>
<title>Reloj digital...
</head>

<body>
<form name="Tick">
<input type="text" size="11" name="Clock">
</form>

<script>
<!--
/*By George Chiang (WA's JavaScript tutorial)

Credit must stay intact for use*/
function show(){
var Digital=new Date()
var hours=Digital.getHours()
var minutes=Digital.getMinutes()
var seconds=Digital.getSeconds()
var dn="AM"
if (hours>12){
dn="PM"
hours=hours-12
}
if (hours==0)
hours=12
if (minutes<=9)
minutes="0"+minutes
if (seconds<=9)
seconds="0"+seconds
document.Tick.Clock.value=hours+":"+minutes+":"
+seconds+" "+dn
setTimeout("show()",1000)
}
show()
//-->
</script>

</body>

</html>

Angelyn
17/10/2007, 19:10
me doy por vencida, pero agradezco tu ayuda de todas maneras. Lo intentare después otro dia cuando este menos alterada :-x

Angelyn
18/10/2007, 17:47
hola, otra pequeña preguntita :-P , puedo agregar mas codigos dentro de las etiquetas body o nomas me puede funcionar con una??? gracias :wink:

Arielo
18/10/2007, 18:16
hola...
Podés poner todos los códigos que necesites dentro del BODY.
Tenés que ir separándolos con etiquetas <SCRIPT> y </SCRIPT>