1 OBJETOS, DOM, JSON



Documentos relacionados
Carlos Roberto Jaimez González. Programación de Web Dinámico

Índice. Programación en Internet Curso Introducción El DOM en PHP. Programación en Internet DLSI - Universidad de Alicante 1

7. Definición de un estilo en función del contexto.

XAJAX: una librería de AJAX para PHP (parte 1)

DISEÑO ORGANIZACIONAL. Diseño web avanzado con HTML5 y CSS5

SEGUNDA PARTE: DOM y jquery

CAPAS O CONTENEDORES EN HTML. ETIQUETAS DIV Y SPAN. EJEMPLOS. MAQUETAR O DAR ESTRUCTURA A LAS PÁGINAS WEB. (CU00726B)

Programa por Clase. 8. CSS3 9. Ejercicio Práctico 10. Examen

Acceso a los elementos HTML

Javascript parte II: AJAX

TEMA 4. Introducción a la programación con el lenguaje JavaScript. Tecnologías de la Información 1ºBachillerato IES Zurbarán (Badajoz)

CLASS JAVASCRIPT CLASES? OBJETOS PREDEFINIDOS. WINDOW, OBJETO GLOBAL. NUMBER, MATH, DATE, REGEXP, ERROR. (CU01144E)

Bases de Datos. Marta Elena Zorrilla Pantaleón Rafael Duque Medina DPTO. DE MATEMÁTICAS, ESTADÍSTICA Y COMPUTACIÓN

RECUPERAR DATOS DE UN FORMULARIO HTML USANDO PHP. USO DE $_GET. EJEMPLOS Y EJERCICIOS RESUELTOS. (CU00833B)

Formularios HTML. Elementos de Programación y Lógica

Tutorial Servicios Web

Curso Online de Diseño Web avanzado con HTML5 y CSS3

Programa. Conceptos básicos: variables, valores y objetos predefinidos, operadores, etc. etc. Callbacks, eval(), etc.

Páginas web ::: Hojas de estilo CSS Diseño de materiales multimedia. Web Hojas de estilo CSS

Diseño de sitios Web mediante estándares

Imágenes y objetos IMÁGENES

TEMA 9 CREACIÓN DE PÁGINAS WEB

EJERCICIOS HTML BÁSICOS

GENERAR DOCUMENTOS HTML USANDO LENGUAJE PHP. EJERCICIO RESUELTO EJEMPLO SENCILLO. (CU00733B)

Lo básico de Javascript. ISIS2603 Departamento de Sistemas y Computación Universidad de los Andes

EJEMPLO DE APERTURA Y CIERRE DE UNA ETIQUETA.

Gestión de eventos y formularios en JavaScript.

SELECTOR UNIVERSAL. NTH-OF-TYPE Y NTH-LAST- CHILD. COMBINAR SELECTORES. EJEMPLOS Y EJERCICIOS RESUELTOS CSS. (CU01016D)

La plantilla propone aprovechar esta estructura en común y sólo modificar el contenido del área del documento que sea diferente.

1.1.- Introducción a la Web Vemos una introducción al medio donde se encajan los lenguajes que vamos a tratar: la web.

Para este ejemplo vamos a crear el marco de aplicación que se presenta en la captura de pantalla siguiente:

Páginas web ::: Formularios Diseño de materiales multimedia. Web Formularios

LEER Y ESCRIBIR ARCHIVOS O FICHEROS EN C. FOPEN, FCLOSE, MODOS DE ACCESO READ, WRITE Y APPEND (CU00536F)

PHP: Interacción con HTML

Plantilla de texto plano

PROYECTO MIS IMÁGENES,

DEFINICIÓN DE ESTILOS POR MEDIO DE CLASES

HTML. HTML (HyperText Markup Language) Creado en 1989 por el físico nuclear TIM BERNERS- LEE

DOM. Mediante JavaScript es posible accesar en lectura y

JavaScript toma su sintaxis de los lenguajes de programación más conocidos, fundamentalmente C/C++, aunque también algo de Pascal.

BANNERS CÍCLICOS CON JAVASCRIPT

JavaScript III. JavaScript, la POO y el DOM

Visualización y Transformaciones en XML

Cómo gestionar menús en Drupal 7

MANUAL DE USUARIO DEL SISTEMA PARA EL REDACTOR

Manual de ayuda para la utilización del Correo Interno en el Campus Virtual

Programa de saludo 2 (resuelto)

Desarrollo Web en Entorno Servidor

Manejo de datos BLOB con PHP y MySQL

1. Creación de colecciones y documentos XML en nuestra herramienta exist-db Open Source Native XML Database.

UF1. NF2. JQUERY M2.UF1.NF1 CGA 1/22

Qué hacer si no aparece el menú programador?

Primeros pasos para una configuración rápida de la tienda.

Capítulo 1 Documentos HTML5

Modelado de páginas web

Programación páginas web JavaScript y PHP

MANUAL DE USO Octubre CLIENTE: Liber Ediciones AUTOR: 2.0 DISEÑO _

ACTIVAMOS NUEVOS PLUGINS

Programación páginas web JavaScript y PHP

DESCARGA E INSTALACIÓN DE LA DOCUMENTACIÓN PARA LAS CLASES DEL API DE JAVA. CONSULTAR EN LOCAL O EN INTERNET? (CU00910C)

En cualquier caso, tampoco es demasiado importante el significado de la "B", si es que lo tiene, lo interesante realmente es el algoritmo.

Programación: QBASIC

Informática I Notas del curso

Tema 6 Parte III. Frameworks web para dispositivos móviles

VISUAL BASIC Diseño de Formularios MDI y Menús - Proyectos Aplica

Tarea 1 Diseño Web en entorno cliente José Luis Comesaña

Esta extensión está obsoleta a partir de PHP 5.5.0, y será eliminada en el futuro

Configuración de programas FTP. Sync-Intertainment

= C18+C19+C20+C21+C22 = SUMA(C18:C22) Con este sencillo ejemplo hemos querido demostrar que las funciones nos permiten simplificar los cálculos.

1 DISEÑO WEB de ANCHO FIJO con 2 COLUMNAS FLOTANTES

Diseño de páginas web

La ventana de Microsoft Excel

LENGUAJES DE PROGRAMACIÓN 4 MÓDULOS. 56 Horas

Fundamentos de las tecnologías de la información

Centro de Capacitación en Informática

Combinar comentarios y cambios de varios documentos en un documento

A25. Informática aplicada a la gestión Curso 2005/2006 Excel Tema 7. Funciones avanzadas de Excel II

Roberto Gómez Cárdenas Qué es DOM?

Tema: GESTIÓN DE SESIONES EN PHP.

Tema 3, parte 4. Javascript: el DOM (Modelo de Objetos del. Documento) Texto.

FUNDACION EDUCATIVA OBRERA FUNEDO TECNICO EN SECRETARIADO EJECUTIVO SISTEMATIZADO

MANUAL DE USUARIOS DEL MODULO DE EVALUACIÓN DE DESEMPEÑO SISTEMA DE ADMINISTRACIÓN DE SERVIDORES PÚBLICOS (SASP)

Índice general de materias LECCIÓN 7 74

Tipos de variables, características generales y aspectos específicos de PHP de estos elementos básicos de la programación.

Programa de Desarrollo Web Inicial

UNIVERSIDAD DE MEDELLÍN NUEVO PORTAL WEB MANUAL DE USUARIO GESTOR DE CONTENIDOS

JavaScript,, AJAX y otras tecnologías web. Área de Ingeniería Telemática

USO ACADÉMICO DE HOJAS ELECTRÓNICAS. Segunda Sesión

Transcripción:

OBJETOS, DOM, JSON 1

2 Objetos http://www.w3schools.com/js/js_obj_intro.asp Se delimitan con llaves. Contienen propiedades. Las propiedades del objeto: pares nombre: valor, separados por comas. var alumno = { nombre: Ana", id: 5566 }; O: var alumno={ }; nombre: Ana", apellidos: Milton", id : 5566 Podemos acceder a las propiedades del objeto de dos formas: a) console.log(alumno.nombre); // mejor.. b) console.log(alumno[ nombre"]);

3 Arrays de objetos // array de objetos var alumnos = [ {nombre: "Ana Tendero", edad: 27 }, {nombre: "Luis Fornes", edad: 16 }, {nombre: "Bettine Villa", edad: 21 }, ]; function muestraclase(val, index) { var res = "<br> pos " + index + " > " + val.nombre + " " + val.edad; document.write(res); } alumnos.foreach(muestraclase);

4 Objetos (II) Además de propiedades, los objetos tiene métodos Las propiedades son valores asociados al objeto. Los métodos son acciones que se pueden realizar sobre los objetos Ya hemos usado objetos sin saberlo! Al usar por ejemplo una variable de texto var nombre = Alfredo ; console.log( nombre.length ); // propiedad console.log( nombre.indexof( l ) ); // método

5 Añadir métodos a objeto javascript // definición var person = { firstname: "John", lastname : "Doe", id : 5566, fullname : function() { // uso de this return this.firstname + " " + this.lastname; } }; // invocación console.log( person.fullname() );

7 De todas formas Nosotros no nos vamos a centrar en la definición de objetos, etc. En ECMAScript el soporte de clases es un poco especial, y de hecho está en plena evolución. Pero es bueno conocerlos para poder usar las propiedades y métodos que nos proporciona el lenguaje o las APIS de terceros.

8 Ejemplo uso DOM Objeto document y método getelementsbytagname: devuelve un array con todos los nodos de la pagina HTML con esa etiqueta. Cada enlace tiene una propiedad href con la URL destino del enlace Ejemplo: código que cuenta el número de enlaces de una página. <script> var cont = 0; // enlaces a Google var enlaces = document.getelementsbytagname("a"); alert( "Numero de enlaces: " + enlaces.length); for (var i = 0; i< enlaces.length; i++) { console.log( enlaces[i].href ) if (enlaces[i].href == "http://www.google.com/") cont++; } alert( "Numero de enlaces a Google: " + cont); </script>

9 DOM Document Object Model

10 DOM Proporciona una representación estructural del documento, permitiendo la modificación de su contenido o su presentación visual. comunica el contenido con los scripts o lenguajes de programación. Da acceso a la estructura de la página HTML mediante mapeo de los elementos en un árbol de nodos. Cada elemento un nodo, cada porción de texto un nodo de texto. Tipos de nodos: Document Element Attr Text Comment

11 Acceso a elementos Generales: document.title document.lastmodified document.links document.url Mediante métodos: devuelven un elemento o una HTMLColection (similar a un array..) getelementbyid getelementsbytagname getelementsbyclassname document.queryselector() document.queryselectorall()

Acceso general: dom-01.html 12

13 Acceso por id, class, tag, selector CSS dom-02.html var paragraphs = document.getelementsbytagname('p'); var suma = 0; for (var i=paragraphs.length-1;i>=0;i--) suma += paragraphs[i].textcontent.length; console.log("total chars en <p>: ", suma); var parrafos = document.queryselectorall("#content div p")...

14 Acceso a la información del nodo dom-03.html Propiedades para acceder y modificar el contenido. textcontent: solo el texto, sin las etiquetas HTML, innerhtml: incluye todo el texto con el HTML existente var p = document.getelementsbytagname('p')[0]; p.textcontent; // "This is a simple HTML file." p.innerhtml; // "This is a <i>simple</i> HTML file." p.textcontent = "Modified HTML file"; // look for change in browser p.innerhtml = "<i>modified</i> HTML file"; // look for change in browser

15 Acceder atributos Los atributos de una etiqueta son traducidos por el navegador en propiedades de un objeto. Dos métodos existen para leer y escribir los atributos de un elemento, getattribute permite leer el valor de un atributo mientras que setattribute permite su escritura. for (i=0; i<document.images.length;i++) document.images[i].setattribute("alt", "imagen nº " + i); document.write("<p> Textos alt modificados: ") for (i=0; i<document.images.length;i++) document.write(document.images[i].getattribute("alt"), ",");

16 Cambiar el estilo Sintaxis element.style.propiedad = valordelapropiedad Ejemplo var parrafos = document.queryselectorall("div p") for (var i = parrafos.length - 1; i >= 0; i--) { parrafos[i].style.fontfamily = "monospace"; parrafos[i].style.fontsize = "1.4em"; } Nota: Cada atributo CSS posee una propiedad del DOM equivalente, formándose con el mismo nombre del atributo CSS pero sin los guiones y llevando la primera letra de las palabras a mayúsculas: font-size => fontsize. Otra forma es modificar el atributo class (mediante la propiedad classname ya que class es palabra reservada), o usando setattribute.

17 Añadir elementos: dom-04.html Añadiremos dos párrafos, uno será el primeo del bloque con id content y el otro será el ultimo de dicho bloque: let p1 = document.createelement('p'); let p2 = document.createelement('p'); p1.textcontent = "I was created dynamically!"; p2.textcontent = "I was also created dynamically!"; // usaremos los métodos insertbefore y appendchild // y necesitaremos referencias al bloque y a su primer hijo let parent = document.getelementbyid('content'); let firstchild = parent.childnodes[0]; // con esas referencias insertamos los nodos creados parent.insertbefore(p1, firstchild); parent.appendchild(p2); // insertbefore toma como primer parámetro el nodo a insertar, y // como segundo el nodo delante del cual lo insertremos // appendchild es sencilla: añade el nodo pasado como último hijo

18 Borrar y mover/reemplazar removechild es un método que se aplica sobre el padre, y se le pasa como parámetro el hijo a borrar var child = document.getelementbyid("p1"); child.parentnode.removechild(child); Nota: existe un nuevo método remove() que es parte del DOM4, pero no se recomienda su uso porque no está soportado.. replacechild es un método que se aplica sobre el padre, y se le pasa como parámetro el nuevo hijo y el hijo a reemplazar var child = document.getelementbyid("p1"); var parent = child.parentnode; parent.replacechild(nuevo, child); Nota: si el nodo nuevo ya existía en el árbol se mueve

IES Francisco Romero Vargas Curso 2014-15 19 Eventos Un evento HTML puede ser algo que el navegador o el usuario haga. Ejemplos de eventos Se hace clic sobre un botón o elemento Una página HTML que termina de cargarse El valor de un texto de entrada cambia Cuando el evento ocurre, queremos hacer algo JavaScript permite ejecutar código cundo el evento es detecctado. Sintaxis <elemento evento= códigojavascript"> Ejemplo <button onclick='getelementbyid("demo").innerhtml=date()'> Pulsa para ver la hora</button>

IES Francisco Romero Vargas Curso 2014-15 20 Mejor usar función <p>click the button to display the date.</p> <button onclick="displaydate()">the time is?</button> <script> function displaydate() { document.getelementbyid("demo").innerhtml = Date(); } </script> <p id="demo"></p>

IES Francisco Romero Vargas Curso 2014-15 22 Formularios <form name="myform" action="demo_form.asp" onsubmit="return validateform() method="post"> Name: <input type="text" name="fname"> <input type="submit" value="submit"> </form> function validateform() { var x = document.forms["myform"]["fname"].value; if (x == null x == "") { alert("name must be filled out"); return false; } } // si onsubmit devuelve false no se envcia el formulario