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: ¿Como puedo construir con un texarea y algunos botones una pantalla de captura para que los usuarios escriban un texto y puedan insertar comandos ...

  #31 (permalink)  
Antiguo 02/12/2002, 18:39
Avatar de Kaopectate
Colaborador
 
Fecha de Ingreso: diciembre-2001
Ubicación: Curaçao (Antillas Holandesas)
Mensajes: 3.179
Antigüedad: 22 años, 4 meses
Puntos: 38
31.- Textbox con botones para formato (tipo ForosDelWeb)

P: ¿Como puedo construir con un texarea y algunos botones una pantalla de captura para que los usuarios escriban un texto y puedan insertar comandos para negritas, subrayado, etc. y que dichos comandos se inserten justo en el punto donde esté el cursor?

R: [ver ejemplo]
El siguiente script es un extracto del usado en los ForosDelWeb, en su versión anterior.

Créditos: Tukzone, SirMatrix y UnKnown.

NOTAS: Se debe reemplazar "java script" por "JavaScript" para que funcione.

Se ha reportado que no funciona correctamente en NetScape 4.

Código PHP:
<HTML>
 <
HEAD>
 </
HEAD>
 <
BODY>
  <
SCRIPT language="Javascript" type="text/javascript">

   
// Este genial Script fue desarrollado por Tukzone, SirMatrix y Unknow, 
   // todos usuarios del Foro.. Gracias a ellos por su colaboración

  
function storeCaret(text) { 
   if (
text.createTextRange) {
    
text.caretPos document.selection.createRange().duplicate();
   }
  }

  function 
meter(text) {
   var 
postopic document.PostTopic.Message;
   if (
postopic.createTextRange && postopic.caretPos) {      
    var 
caretPos postopic.caretPos;      
    
caretPos.text caretPos.text.charAt(caretPos.text.length 1) == ' ' 

text ' ' text;
   }
   else 
postopic.value += text;
   
postopic.focus(caretPos)
  }

  function 
codigo(accion) {
   switch(
accion) {
    case 
"url":
     
url prompt("URL de el Enlace""http://");
     if(
url) {
      
url="[ a]"+url+"[ /a]";
      
meter(url);
     }
     break;
    case 
"bold":
     
negras prompt("Texto en Negritas""");
     if(
negras) {
      
negras="[ b]"+negras+"[ /b]";
      
meter(negras);
     }
     break;
    case 
"italics":
     
italics prompt("Texto en Italicas""");
     if(
italics) {
      
italics="[ i]"+italics+"[ /i]";
      
meter(italics);
     }
     break;
    case 
"code":
     
code="[ code]  [ /code]";
     
meter(code);
     break;
    case 
"quote":
     
quote="[ quote]  [ /quote]";
     
meter(quote);
     break;
    default:
     
meter(accion);
     break;
   }
  }

  function 
textCounter(fieldcountfieldmaxlimit) {
   if (
field.value.length maxlimit)
    
field.value field.value.substring(0maxlimit);
   else 
    
countfield.value maxlimit field.value.length;
  }
 
</script>
 <form name="PostTopic">
  Nombre de usuario:
  <INPUT TYPE="text" NAME="UserName" SIZE="12" MAXLENGTH="25" 

VALUE='Kaopectate'> 
  Password:
  <input maxLength="13" name="Password" size="12" type="password" 

VALUE='**********'>
  Mensaje:
  <textarea 

onKeyDown="textCounter(this.form.Message,this.form.remLen,2000);" 

onKeyUp="javascript:storeCaret(this); 

textCounter(this.form.Message,this.form.remLen,2000);" name="Message" 

onchange="javascript:storeCaret(this);" 

onclick="javascript:storeCaret(this);" rows="10" wrap="VIRTUAL" cols="45">
  </textarea>
  <a href="javascript:codigo('url')">Enlace</a> 
  <a href="javascript:codigo('bold')">negrita</a>
  <a href="javascript:codigo('italics')">italica</a> 
  <a href="javascript:codigo('code')">codigo</a>
  <a href="javascript:codigo('quote')">citar</a>
  Tiene
  <input readonly type=text name=remLen size=5 maxlength=3 value="2000">
  caracteres para su mensaje.
 </form>
</BODY>
</HTML> 

Última edición por Kaopectate; 23/12/2002 a las 23:52
  #32 (permalink)  
Antiguo 03/12/2002, 07:56
Avatar de Kaopectate
Colaborador
 
Fecha de Ingreso: diciembre-2001
Ubicación: Curaçao (Antillas Holandesas)
Mensajes: 3.179
Antigüedad: 22 años, 4 meses
Puntos: 38
32.- Alerts multilínea

P: ¿Como puedo incluír un salto de línea dentro de un mensaje de alert?

R: [ver ejemplo]

Código PHP:
<html>
 <
head>
  <
script language="JavaScript">
   function 
mostrar(){
    
alert("Este es un mensaje de alerta\ncon mas de una línea");
   }
  
</script>
 </head>
 <body>
  <form name="frm">
   <input type="button" value="Alert multilínea" onclick="mostrar()">
  </form>
 </body>
</html> 

Última edición por Kaopectate; 23/12/2002 a las 23:53
  #33 (permalink)  
Antiguo 03/12/2002, 10:20
Avatar de Kaopectate
Colaborador
 
Fecha de Ingreso: diciembre-2001
Ubicación: Curaçao (Antillas Holandesas)
Mensajes: 3.179
Antigüedad: 22 años, 4 meses
Puntos: 38
33.- Validar dirección de correo

Aportado por joseisrael

P: ¿Cómo valido que el email colocado por el usuario tenga el simbolo de "@" ?

R: [ver ejemplo]

Código PHP:
<HTML>
<
HEAD>
<
TITLE></TITLE
<
SCRIPT LANGUAGE="JavaScript">
function 
validar_email() {
if (
document.formu.EMAIL.value.indexOf('@') == -1)
alert ("Debes colocar una \"Dirección de Email\" válida");
document.formu.EMAIL.focus() //Esto recorna el cursor al campo "Email"
else {
document.formu.submit();
}
}
</SCRIPT>
</HEAD>

<BODY>
<FORM NAME="formu" METHOD="POST" ACTION="Tu.Accion">
Ingresa tu Email: <INPUT NAME="EMAIL" TYPE="text"><BR>
<INPUT type="button" name="ENVIAR" value="Agregar" onClick="JavaScrpit:validar_email();">
</FORM> 

Última edición por Kaopectate; 23/12/2002 a las 23:54
  #34 (permalink)  
Antiguo 03/12/2002, 16:19
 
Fecha de Ingreso: noviembre-2002
Ubicación: Washington, DC
Mensajes: 822
Antigüedad: 21 años, 6 meses
Puntos: 5
34. Imprimir sin diálogo de confirmación IE

P. ¿Cómo imprimir sin que aparezca la caja de diálogo para seleccionar impresora en IE 5.5?

R.

Código:
<HTML>
<HEAD>
<SCRIPT language="javascript"> 
function imprimir()
{ if ((navigator.appName == "Netscape")) { window.print() ; 
} 
else
{ var WebBrowser = '<OBJECT ID="WebBrowser1" WIDTH=0 HEIGHT=0 CLASSID="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2"></OBJECT>'; 
document.body.insertAdjacentHTML('beforeEnd', WebBrowser); WebBrowser1.ExecWB(6, -1); WebBrowser1.outerHTML = "";
}
}
</SCRIPT> 
</HEAD>
<BODY onload="imprimir();">
Esta es la pagina impresa de prueba!
</BODY>
</HTML>
__________________
Yanira

Última edición por Yanix; 03/12/2002 a las 16:21
  #35 (permalink)  
Antiguo 04/12/2002, 08:10
Avatar de Kaopectate
Colaborador
 
Fecha de Ingreso: diciembre-2001
Ubicación: Curaçao (Antillas Holandesas)
Mensajes: 3.179
Antigüedad: 22 años, 4 meses
Puntos: 38
35.- Screen saver

P: ¿Cómo puedo hacer que una vez transcurridos "n" segundos de inactividad en mi página se dispare una rutina de screen saver?

R: [ver ejemplo]

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

   var 
id 0;
   var 
bEjecutado false;
   var 
nMiliSegundos 5000;

   function 
iddle(){
    if (
bEjecutadowindow.clearTimeout(id);
    
bEjecutado true;
    
id window.setTimeout("screenSaver()"nMiliSegundos);
   }

   function 
screenSaver(){
    
alert("Ponga aqui su método Screen Saver");
   }

  
</script>
 </head>
 <body onload="iddle()" onkeyup="iddle()" onclick="iddle()">
  <form name="frm">
   Este PopUp se autodestruirá en cinco segundos...
  </form>
 </body>
</html> 

Última edición por Kaopectate; 23/12/2002 a las 23:55
  #36 (permalink)  
Antiguo 04/12/2002, 10:33
Avatar de Kaopectate
Colaborador
 
Fecha de Ingreso: diciembre-2001
Ubicación: Curaçao (Antillas Holandesas)
Mensajes: 3.179
Antigüedad: 22 años, 4 meses
Puntos: 38
36.- Sumar meses a una fecha

P: ¿Cómo puedo sumar (o restar) una cantidad de meses a una fecha válida?

R: [ver ejemplo]

Código PHP:
<html>
 <
head>
  <
script language="JavaScript">
   function 
cerosIzq(sValnPos){
    var 
sRes sVal;
    for (var 
sVal.lengthnPosi++)
     
sRes "0" sRes;
    return 
sRes;
   }

   function 
armaFecha(nDianMesnAno){
    var 
sRes cerosIzq(String(nDia), 2);
    
sRes sRes "/" cerosIzq(String(nMes), 2);
    
sRes sRes "/" cerosIzq(String(nAno), 4);
    return 
sRes;
   }

   function 
sumaMes(nDianMesnAnonSum){
    if (
nSum >= 0){
     for (var 
0Math.abs(nSum); i++){
      if (
nMes == 12){
       
nMes 1;
       
nAno += 1;
      } else 
nMes += 1;
     }
    } else {
     for (var 
0Math.abs(nSum); i++){
      if (
nMes == 1){
       
nMes 12;
       
nAno -= 1;
      } else 
nMes -= 1;
     }
    }
    return 
armaFecha(nDianMesnAno);
   }

   function 
calcula(){
    var 
sFc0 document.frm.fecha0.value// Se asume válida
    
var nSum parseInt(document.frm.meses.value);
    var 
sFc1 sFc0;
    if (!
isNaN(nSum)){
     var 
nDia parseInt(sFc0.substr(02));
     var 
nMes parseInt(sFc0.substr(32));
     var 
nAno parseInt(sFc0.substr(64));
     
sFc1 sumaMes(nDianMesnAnonSum);
    }
    
document.frm.fecha1.value sFc1;
   }
  
</script>
 </head>
 <body>
  <form name="frm">
   <table border="0">
    <tr>
     <td>
      <table border="1">
       <tr>
        <td align="right">
         Fecha inicial (dd/mm/aaaa)
        </td>
        <td>
         <input type="text" name="fecha0" value="21/03/2002">
        </td>
       </tr>
       <tr>
        <td align="right">
         Meses
        </td>
        <td>
         <input type="text" name="meses" value="0">
        </td>
       </tr>
       <tr>
        <td align="right">
         Fecha final (dd/mm/aaaa)
        </td>
        <td>
         <input type="text" name="fecha1" readonly>
        </td>
       </tr>
      </table>
     </td>
    </tr>
    <tr>
     <td align="center">
      <input type="button" value="Calcular" onclick="calcula()">
     </td>
    </tr>
   </table>
  </form>
 </body>
</html> 

Última edición por Kaopectate; 23/12/2002 a las 23:56
  #37 (permalink)  
Antiguo 06/12/2002, 20:59
Avatar de atlante  
Fecha de Ingreso: julio-2002
Ubicación: Lima
Mensajes: 140
Antigüedad: 21 años, 9 meses
Puntos: 0
37.- text que admita solo numeros

P : Como se puede impedir que se ingrese un dato no numerico ?

R :
Código PHP:
<HTML>
<
HEAD>
<
TITLE></TITLE>
</
HEAD>
<
script language="javascript">
<!--
function 
LP_data(){
var 
key=window.event.keyCode;//codigo de tecla.
if (key 48 || key 57){//si no es numero 
window.event.keyCode=0;//anula la entrada de texto.
}}
-->
</script> 
<basefont face=verdana size=2>
<BODY>
<form name="miForm">
<input type=text name="num" onKeypress="LP_data()"><br><br>
<input type="button" value="enviar" onClick="LP_box()">
</form>
</BODY>
</HTML>
__________________
If you look, If you really read between the lines, You will see...

Última edición por atlante; 29/12/2002 a las 16:20
  #38 (permalink)  
Antiguo 07/12/2002, 11:46
Avatar de Kaopectate
Colaborador
 
Fecha de Ingreso: diciembre-2001
Ubicación: Curaçao (Antillas Holandesas)
Mensajes: 3.179
Antigüedad: 22 años, 4 meses
Puntos: 38
38.- Radio buttons

P: ¿Como puedo preasignar el valor de un botón de radio?

R: [ver ejemplo]

Código PHP:
<html>
 <
head>
  <
script language="JavaScript">
   function 
Sel(n){
    
document.frm.rad[1].checked true;
   }
  
</script>
 </head>
 <body>
  <form name="frm">
   <input type="radio" name="rad" value="1">Uno<br>
   <input type="radio" name="rad" value="2">Dos<br>
   <input type="button" name="uno" value="Uno" onclick="Sel(1)">
   <input type="button" name="dos" value="Dos" onclick="Sel(2)">
  </form>
 </body>
</html> 

Última edición por Kaopectate; 23/12/2002 a las 23:56
  #39 (permalink)  
Antiguo 07/12/2002, 14:21
Avatar de Carlitos
Usuario no validado
 
Fecha de Ingreso: mayo-2001
Ubicación: Zaragoza
Mensajes: 1.304
Antigüedad: 23 años
Puntos: 25
39.- Coodenadas

P.- ¿Como averiguar las coordenadas del ratón?

R.-

[code]<head>
<title>Coordenadas</title>
<script language="JavaScript">
<!--
function mouseMove(e) {
document.getElementById("ejeX").value = (document.all)? event.x+document.body.scrollLeft : e.pageX
document.getElementById("ejeY").value = (document.layers)? event.y+document.body.scrollTop : e.pageY
}
function init() {
if (!document.all) document.captureEvents(Event.MOUSEMOVE);
document.onmousemove = mouseMove;
}
// -->
</script>
</head>

<body onload="init()">
Eje X <input type="text" id="ejeX" value="0" size="4">
<br>Eje Y <input type="text" id="ejeY" value="0" size="4">
</body>

</html>

Última edición por Carlitos; 09/07/2005 a las 10:23
  #40 (permalink)  
Antiguo 07/12/2002, 14:26
Avatar de Carlitos
Usuario no validado
 
Fecha de Ingreso: mayo-2001
Ubicación: Zaragoza
Mensajes: 1.304
Antigüedad: 23 años
Puntos: 25
40.- Formularios

P.- ¿Cómo substituir los botones de un formulario por imágenes?

R.- [Ejemplo]
Código:
<FORM name="frm" method="post" ACTION="javascript:alert('Este formulario no hace nada')">
<INPUT type="text" name="campo1">
<INPUT type="text" name="campo2">
<A href="javascript:document.frm.submit();"><IMG src="imagen_submit.gif" border="0"></A>

<A href="javascript:document.frm.reset();"><IMG src="imagen_reset.gif" border="0"></A>
</FORM>

Última edición por Carlitos; 05/06/2003 a las 13:06
  #41 (permalink)  
Antiguo 07/12/2002, 14:31
Avatar de Carlitos
Usuario no validado
 
Fecha de Ingreso: mayo-2001
Ubicación: Zaragoza
Mensajes: 1.304
Antigüedad: 23 años
Puntos: 25
41.- Enlaces [Ejemplo]

P.- ¿Cómo quitar el marco de los enlaces?

R.- Añadiendo onFocus="this.blur()"

Código:
<A href="http://www.pagina.com" onFocus="this.blur()">Enlace</a>

Última edición por Carlitos; 21/12/2002 a las 05:08
  #42 (permalink)  
Antiguo 07/12/2002, 14:34
Avatar de Carlitos
Usuario no validado
 
Fecha de Ingreso: mayo-2001
Ubicación: Zaragoza
Mensajes: 1.304
Antigüedad: 23 años
Puntos: 25
42.- Navegación

P.-¿Como redireccionar a una página?

R.- Entre el <HEAD> y el </HEAD> de tu página debes poner lo siguiente:

Código:
<META HTTP-EQUIV="Refresh" CONTENT="@;URL=http://www.tusitioweb.com">
Donde @ es el tiempo que esperará a redireccionarse, puedes poner 0 para que rápido se redireccione.
  #43 (permalink)  
Antiguo 07/12/2002, 14:37
Avatar de Carlitos
Usuario no validado
 
Fecha de Ingreso: mayo-2001
Ubicación: Zaragoza
Mensajes: 1.304
Antigüedad: 23 años
Puntos: 25
43.- Frames

P.-¿Cómo evitar que tu página se cargue en un frame externo?

R.- Poniendo esto en el <head> de tu página.

Código:
<script>
if (parent.frames.length > 0)  parent.location.href = self.document.location
</script>
  #44 (permalink)  
Antiguo 07/12/2002, 14:46
Avatar de Carlitos
Usuario no validado
 
Fecha de Ingreso: mayo-2001
Ubicación: Zaragoza
Mensajes: 1.304
Antigüedad: 23 años
Puntos: 25
44.- Frames

P.- ¿Como cargar el frame principal si acceden directamente a una de mis páginas secundarias?

R.- Poniendo esto en el <head> de tus páginas secundarias.

Código:
<script>
if(top==self) top.location="index.htm"
</script>
Donde index.htm, es el nombre de tu página principal.
  #45 (permalink)  
Antiguo 08/12/2002, 18:30
Avatar de Kaopectate
Colaborador
 
Fecha de Ingreso: diciembre-2001
Ubicación: Curaçao (Antillas Holandesas)
Mensajes: 3.179
Antigüedad: 22 años, 4 meses
Puntos: 38
45.- Formato de números enteros

P: ¿Como puedo presentar un número entero usando separadores de miles?

R: [ver ejemplo]
Código PHP:
<html>
 <
head>
  <
script language="JavaScript">
   function 
formatNmb(nNmb){
    var 
sRes "";
    for (var 
jnNmb.length 10>= 0i--, j++)
     
sRes nNmb.charAt(i) + ((0) && (== 0)? ".""") + sRes;
    return 
sRes;
   }
  
</script>
 </head>
 <body>
  <table border="1">
   <script language="JavaScript">
    document.writeln("<tr><td>" +      13528 + "</td><td>" + formatNmb(     "13528") + "</td></tr>");
    document.writeln("<tr><td>" +        412 + "</td><td>" + formatNmb(       "412") + "</td></tr>");
    document.writeln("<tr><td>" +    1378528 + "</td><td>" + formatNmb(   "1378528") + "</td></tr>");
    document.writeln("<tr><td>" +     213528 + "</td><td>" + formatNmb(    "213528") + "</td></tr>");
    document.writeln("<tr><td>" + 1234567890 + "</td><td>" + formatNmb("1234567890") + "</td></tr>");
   </script>
  </table>
 </body>
</html> 

Última edición por Kaopectate; 24/12/2002 a las 09:54
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 11:56.