miércoles, 22 de febrero de 2017

VENTANAS EMERGENTES Y VENTANAS MODAL. (CLASE Nº4)

-Este día realizamos una evaluación escrita sobre innerhtml la respuesta era la siguiente :
<script>
document.getElementById("rta").innerHTML=rta;
</script>

Las ventanas emergentes

Las ventanas emergentes o popups son esas ventanas que aparecen de forma automática sin que el usuario las haya solicitado. Su contenido suele ser de tipo publicitario y no tienen un tamaño fijo, aunque lo más habitual es que no ocupen la totalidad de la pantalla.
Aunque cada vez van siendo menos usadas, debido principalmente a los sistemas de bloqueos y restricciones que posibilitan los propios navegadores, conviene conocer precisamente el sistema de protección que tenemos ante estos elementos emergentes que la mayoría de las veces son involuntarios para el usuario.
En cuanto a su forma de presentarse, aunque se utilice la denominación general de ventanas emergentes, pueden ser:
  • Emergentes: Se presentan en primer plano superponiéndose a la ventana activa. Su contenido suele ser principalmente publicitario y su uso suele ser muy abusivo.
  • Sumergidas: En este caso aparecen bajo la ventana principal y pueden ser bastante más peligrosas que las emergentes, ya que la función publicitaria no parece que se ajuste a esta forma de presentación y en algunos casos pueden llevar códigos ocultos destinados a escribir cookies u otras funciones de control.
TOMADO DE:
 http://www.ite.educacion.es/formacion/materiales/157/cd/m2_1_navegacion/las_ventanas_emergentes1.html

EJERCICIO EN CLASE:

<html>
<head>
<title>emergente</title>

</head>
<body>
<a href="" onclick='javascript:window.open("pagina.html","miventana","width=300,height=200,menubar=no,top=130,left=930")'>Abrir</a>
</body>
</html>


Cómo hacer una simple ventana modal con HTML y Javascript

Según se afirma en la Wikipedia, la aparición de Lightbox animó a otros desarrolladores a crear proyectos similares, como el popular Thickbox, basado en jQuery. Lightbox y sus descendientes son aplicaciones escritas en Javascript que hacen un uso intensivo del DOM para mostrar contenido web de forma modal y visualmente atractiva. Andrés Nieto ha recopilado en su página más de veinte de esos proyectos.
Si bien es cierto que no hay que estar inventando la rueda todos los días, porque ya alguien lo hizo por nosotros, hay circunstancias en las que necesitamos una rueda hecha a medida. Por eso, saber cómo se han hecho otras ruedas puede sernos útil para hacer la nuestra.
A continuación explicaré los elementos básicos que necesitamos para hacer una rueda, perdón, una simple ventana modal con HTML y Javascript… 🙂

Primero necesitamos un contenedor, un espacio donde ubicar el contenido web que deseamos mostrar. Normalmente ésto se hace con la etiqueta DIV. Este contenedor formará parte de la página web, pero no se mostrará cuando se visualice la página: será un elemento invisible. Luego necesitamos alguna manera de mostrar el contenedor, y su contenido, cuando nos haga falta. Y por último, necesitaremos también alguna forma de ocultar el contenedor. ¡Manos a la obra!
Pega al final de la sección body de tu página web el siguiente código:
<div id=”miVentana” style=”position: fixed; width: 350px; height: 190px; top: 0; left: 0; font-family:Verdana, Arial, Helvetica, sans-serif; font-size: 12px; font-weight: normal; border: #333333 3px solid; background-color: #FAFAFA; color: #000000; display:none;”>
Aquí pones tu contenido web
</div>
Los atributos más importantes de este DIV son:
id: el identificador del elemento, que nos permitirá recuperarlo y acceder a él a través del DOM.
display: le indicamos al navegador que no muestre este elemento (none).
Dentro del DIV deberás colocar el contenido web que deseas mostrar. ¡Procura que quepa dentro del contenedor!
Luego crea un elemento de script en tu código HTML e inserta las siguientes líneas:
function mostrarVentana()
{
    var ventana = document.getElementById(‘miVentana’);
    ventana.style.marginTop = “100px”;
    ventana.style.left = ((document.body.clientWidth-350) / 2) +  “px”;
    ventana.style.display = ‘block’;
}
Esta función Javascript obtiene una referencia al contenedor a través de su id, lo coloca en el centro del documento mostrado en el navegador, y lo hace visible.
Por último, agrega éstas líneas de código:
function ocultarVentana()
{
    var ventana = document.getElementById(‘miVentana’);
    ventana.style.display = ‘none’;
}
Esta función obtiene una referencia al contenedor a través de su id, y lo hace invisible.
Y ya ‘tá. 🙂 Con ésto tenemos todos los elementos básicos para hacer una simple ventana modal con HTML y Javascript. A partir de aquí puedes mejorar el proyecto con todo lo que se te ocurra, o simplemente con las funcionalidades que requiera tu proyecto web.
TOMADO DE:
 http://www.hinojosachapel.com/2008/11/como-hacer-una-simple-ventana-modal-con-html-y-javascript.aspx#.WLnDQtLhDcc

VENTANA MODAL SENCILLA SIN JAVASCRIPT




Aunque hay más formas de hacer modales sin necesidad de Javascript, quizá la más cómoda sea mediante el selector :target, un elemento muy olvidado pero muy útil. Gracias a él vamos a decirle a un ‹a› con un ancla en su href que el elemento al que está anclado y oculto se muestre al ejecutarse :target, es decir, que cuando pinchemos en el botón nos muestre la ventanita modal.
Código HTML:
/* El botón */
‹a href=”#modal” title=”” class=”btn”›Pincha aquí‹/a›
/* La modal */
‹div id=”modal”›
   ‹a href=”#cerrar”›‹/a›
   ‹div id=”modalContent”›
      ‹h1›Soy una ventana modal‹/h1›
      ‹p›Hecha sin JS ni jQuery, solo CSS3‹/p›
      ‹a href=”#cerrar”›X‹/a›
   ‹/div›
‹/div›
Código 
CSS:
/* Creamos unos estilos para el botón */
.btn{
   position:relative;
   padding:8px 16px;
   font-family:'psychotik';
   font-size:1.2em;
   font-weight:normal;
   color:#fff;
   text-shadow:none;
   border-radius:16px;
   background:#00A6B6;
   box-shadow:inset 2px 2px 1px #007f8b;
}
.btn:hover{
   background:#FF9C00;
   box-shadow:inset 2px 2px 1px #995f02;
}
/* Un bloque que ocupe toda la pantalla y contendrá nuestra modal... */
#modalContent{
   position:absolute;
   top:50%;
   left:50%;
   z-index:6;
   margin:-2% 0px 0px -150px;
   float:left;
   width:300px;
   color:#fff;
   line-height:22px;
   padding:15px;
   border-radius:5px;
   background:#00A6B6;
   border:1px solid #fff;
   box-shadow:0px 2px 1px #999;
}
/* ... los estilos de la ventana central ... */
#modal{
   position:fixed;
   top:0px;
   left:0px;
   z-index:5;
   float:left;
   width:100%;
   height:100%;
   background:rgba(0,0,0,0.2);
   display:none;
   opacity:0;
}
/* ... y un ‹a› transparente que ocupa todo el espacio para poder cerrar la modal desde cualquier punto */
#modal > a{
   position:fixed;
   top:0px;
   left:0px;
   z-index:1;
   float:left;
   width:100%;
   height:100%;
}
El elemento clave, le decimos que cualquier elemento susceptible de absorber esta propiedad, se muestre, o lo que es lo mismo, cuando pulsemos el botón, se ejecutará :target y nos mostrará la modal
:target{
   display:block!important;
   opacity:1!important;
}
/* Un botón de cerrar para no despistar al usuario */
#modalContent > a{
   position:absolute;
   top:-4px;
   right:-4px;
   color:#00A6B6;
   border-radius:2px;
   background:#fff;
   padding:4px;

}
TOMADO DE: http://www.psychotik.net/ventanas-de-alerta-chulas-y-animadas-con-css3/#cerrar


miércoles, 15 de febrero de 2017

EVENTOS Y InnerHTML (CLASE N°3)

Iniciando la clase en sala de informática el profesor nos dio 10 minutos para inscribirnos en el curso de ingles del SENA, luego empezamos tema nuevo:

-Explicación de concepto y tipos de eventos.

-Ejercicio incluyendo todos los temas vistos el año anterior mas InnerHTML.

6.2. Modelo básico de eventos

6.2.1. Tipos de eventos

En este modelo, cada elemento o etiqueta XHTML define su propia lista de posibles eventos que se le pueden asignar. Un mismo tipo de evento (por ejemplo, pinchar el botón izquierdo del ratón) puede estar definido para varios elementos XHTML diferentes y un mismo elemento XHTML puede tener asociados varios eventos diferentes.
El nombre de cada evento se construye mediante el prefijo on, seguido del nombre en inglés de la acción asociada al evento. Así, el evento de pinchar un elemento con el ratón se denomina onclick y el evento asociado a la acción de mover el ratón se denomina onmousemove.
La siguiente tabla resume los eventos más importantes definidos por JavaScript:
EventoDescripciónElementos para los que está definido
onblurDeseleccionar el elemento<button><input><label><select><textarea><body>
onchangeDeseleccionar un elemento que se ha modificado<input><select><textarea>
onclickPinchar y soltar el ratónTodos los elementos
ondblclickPinchar dos veces seguidas con el ratónTodos los elementos
onfocusSeleccionar un elemento<button><input><label><select><textarea><body>
onkeydownPulsar una tecla (sin soltar)Elementos de formulario y <body>
onkeypressPulsar una teclaElementos de formulario y <body>
onkeyupSoltar una tecla pulsadaElementos de formulario y <body>
onloadLa página se ha cargado completamente<body>
onmousedownPulsar (sin soltar) un botón del ratónTodos los elementos
onmousemoveMover el ratónTodos los elementos
onmouseoutEl ratón "sale" del elemento (pasa por encima de otro elemento)Todos los elementos
onmouseoverEl ratón "entra" en el elemento (pasa por encima del elemento)Todos los elementos
onmouseupSoltar el botón que estaba pulsado en el ratónTodos los elementos
onresetInicializar el formulario (borrar todos sus datos)<form>
onresizeSe ha modificado el tamaño de la ventana del navegador<body>
onselectSeleccionar un texto<input><textarea>
onsubmitEnviar el formulario<form>
onunloadSe abandona la página (por ejemplo al cerrar el navegador)<body>
Los eventos más utilizados en las aplicaciones web tradicionales son onload para esperar a que se cargue la página por completo, los eventos onclickonmouseoveronmouseout para controlar el ratón y onsubmit para controlar el envío de los formularios.
Algunos eventos de la tabla anterior (onclickonkeydownonkeypressonresetonsubmit) permiten evitar la "acción por defecto" de ese evento. Más adelante se muestra en detalle este comportamiento, que puede resultar muy útil en algunas técnicas de programación.
Las acciones típicas que realiza un usuario en una página web pueden dar lugar a una sucesión de eventos. Al pulsar por ejemplo sobre un botón de tipo <input type="submit"> se desencadenan los eventos onmousedownonclickonmouseup y onsubmit de forma consecutiva.
Tomado de:http://librosweb.es/libro/javascript/capitulo_6/modelo_basico_de_eventos_2.html

Propiedad de objetos web innerHTML

La propiedad más interesante de los objetos Web a los que podemos acceder, no forma parte del Standard oficial de HTML.
Se trata de la propiedad innerHTML que fue introducida por Microsoft en Internet Explorer como un método de acceso rápido al contenido completo de un contenedor en HTML. Rápidamente el resto de exploradores lo añadieron en su soporte de lenguaje.
Podemos usar innerHTML para recuperar el contenido actual de un contenedor o insertar nuevo contenido en ese contenedor.
Por contenedor entendemos aquello que está entre las cláusulas < div > y < /div >.
El elemento DIV define un contenedor genérico, el cuál permite a los programadores definir estilos o bloques de contenido.
Como parámetros a DIV tenemos ID, CLASS y ALIGN, aunque éste ultimo cada vez se emplea menos en favor de las CSS.

Ejemplos de uso de DIV.
<div id="primero">
<p>Algún texto.</p>
<p>Un poco más de texto.</p></div>
<div id="segundo"></div>
El primero de los ejemplos muestra 2 párrafos de texto en la página, mientras que el Segundo no muestra nada; simplemente es un contenedor vacío en estos momentos.
Podemos recuperar el contenido de DIV de la siguiente forma:
   var contenido = document.getElementById('primero').innerHTML;
La variable contenido almacena ahora todo el texto de los dos párrafos así como las marcas < p > y < /p >.
Podríamos reemplazar los dos párrafos completamente asignándoles un nuevo valor.
   document.getElementById('primero').innerHTML = '<p>Un parrafo de texto para reemplazar los dos anteriores.</p>’;       
TOMADO DE: https://manuais.iessanclemente.net/index.php/Propiedad_de_objetos_web_innerHTML                                             
EJERCICIO:
<script>
function sumar(){
var a= parseInt(document.getElementById("a").value);
var b= parseInt(document.getElementById("b").value);
//alert( a + b );
//document.write( a + b );
document.getElementById("rta").value= a + b;
document.getElementById("mirespuesta").innerHTML= a + b;
}

function sumar2(a, b){
document.getElementById("rta").value= a + b;
document.getElementById("mirespuesta").innerHTML= a + b;
}


function restar(){
var a= parseInt(document.getElementById("a").value);
var b= parseInt(document.getElementById("b").value);
//alert( a + b );
//document.write( a + b );
document.getElementById("rta").value= a - b;
document.getElementById("mirespuesta").innerHTML= a - b;
}
function multi(){
var a= parseInt(document.getElementById("a").value);
var b= parseInt(document.getElementById("b").value);
//alert( a + b );
//document.write( a + b );
document.getElementById("rta").value= a * b;
document.getElementById("mirespuesta").innerHTML= a * b;
}


sumar2(32, 2);
</script>


<body>
<div id="mirespuesta">hola</div>
A: <input type="text" id="a"><br>
B: <input type="text" id="b"><br>
RTA: <input type="text" id="rta" readonly ><br>
<input type="button" value="Sumar" onclick="sumar();" ><br>
<input type="button" value="Restar" onclick="restar();" ><br>
<input type="button" value="multiplicar" onclick="multi();" ><br>

</body>

miércoles, 8 de febrero de 2017

CONTINUACIÓN DEL REPASO TEMAS VISTOS EN EL 2016.(CLASE N°2)

-En la primera hora de clase se realiza la actualización de datos en Sofia Plus para aprendices del SENA y se resuelven dudas respecto a las horas SENA, actividades y cursos de inglés en la sala de informática. 
-En la segunda hora de clase se recibe información acerca del Pre icfes- Helmer Pardo y luego se hace búsqueda de algunas direcciones por Street View las cuales son enviadas al correo henryferrei@gmail.com.
En la primero hora de clase se realiza la actualización de datos en Sofia Plus para aprendices del SENA.
hab1100

Karen Villamizar
Karen Capataz
Gustavo Quijano
Mariana Alzate
Paula Medellín
Camila Montoya
Camila Caballero
Maria García

Habilidad 1=100

miércoles, 1 de febrero de 2017

INDUCCION Y PAUTAS PARA EL 2017, REPASO DE LOS TEMAS VISTOS EN EL 2016. (CLASE N°1)

PRIMER BIMESTRE
-El profesor dio la inducción y pautas de trabajo para el año 2017, no estuve presente en esta clase sin embargo me adelante con mi compañera de sala de informática (Karen Capataz) del tema visto, también envié un correo al profesor en el que redacte mi excusa y mi permiso.
-Se trabaja los conocimientos vistos del 2016, se busca complementarlos y posteriormente ampliarlos.
Se realizó un ejercicio de Javascript en Sala
<html>
<head>
function suma() [
var a=parseInt(prompt(“a”))
var b=parseInt(prompt(“b”))
alert(a+b)
]
</head>
<body>
<input type=”button”
onclick=”suma()” value=”oprima”>
</body>
</html>