PROGRAMAÇÃO PARA INTERNET RICA DHTML E O DOCUMENT OBJECT MODEL

Documentos relacionados
PROGRAMAÇÃO PARA INTERNET RICA DHTML E O DOCUMENT OBJECT MODEL

PROGRAMAÇÃO PARA INTERNET RICA DHTML E O DOCUMENT OBJECT MODEL

PROGRAMAÇÃO PARA INTERNET RICA FUNDAMENTOS DO JQUERY

Programação WEB I DOM (Document Object Manager)

Desenvolvimento Web. JavaScript aula IV Acesso a documentos com Document Object Model (DOM) Professor: Bruno E. G. Gomes

Programação WEB I DOM (Document Object Manager)

PROGRAMAÇÃO PARA INTERNET RICA MANIPULANDO XHTML E CSS COM JAVASCRIPT

PROGRAMAÇÃO PARA INTERNET RICA FUNDAMENTOS DO CSS PARTE I

PROGRAMAÇÃO PARA INTERNET RICA FUNDAMENTOS DO JQUERY

Java: Linguagem de programação (OOP) JavaScipt: Linguagem de scripts (OOP)

PROGRAMAÇÃO PARA INTERNET RICA MANIPULANDO XHTML E CSS COM JAVASCRIPT

PROGRAMAÇÃO PARA INTERNET RICA MANIPULANDO XHTML E CSS COM JAVASCRIPT

Aula 21 DOM. Desenvolvimento Web I Prof. Filipe Arantes Fernandes

INTRODUÇÃO AO DESENVOLVIMENTO FRONT-END COM HTML, CSS E JAVASCRIPT

Programação Cliente em. jquery. Fontes: Wendell S. Soares e vinteum.com

PROGRAMAÇÃO PARA INTERNET RICA FUNDAMENTOS DO CSS PARTE II

PROGRAMAÇÃO PARA INTERNET RICA AJAX

JavaScript (Elementos de Programação e Programação Básica)

Programação WEB I Funções

Respostas - RESUMO: Questionário CSS. 1) O padrão CSS nasceu para tentar minimizar quais problemas ligados à gestão de conteúdos na web?

DOM (Document Object Model)

F E B A C. Exercício de Fixação 3. FACULDADE DE EDUCAÇÃO DE BACABAL FEBAC Credenciamento MEC/Portaria: 472/07 Resolução: 80/07

PROGRAMAÇÃO PARA INTERNET RICA INTRODUÇÃO AO ACTIONSCRIPT 3. Prof. Dr. Daniel Caetano

PROGRAMAÇÃO PARA INTERNET RICA FUNDAMENTOS DO CSS PARTE I

A diferença entre um site que implementa CSS e outro que não o usa é gigantesca e notável.

Introdução ao Javascript

JavaScript. Programação de Servidores. Marx Gomes Van der Linden

Introdução ao Javascript. Parte 3 Prof. Victor Hugo Lopes

SIMULADOS & TUTORIAIS

HTML 5 TAGS BÁSICAS E ESTRUTURAIS. Prof. Rosemary Melo

Revisando os conteúdos. Introdução ao CSS

jquery Curso de Tecnologia em Análise e Desenvolvimento de Sistemas Desenvolvimento de Sistemas web

Desenvolvimento Web. XHTML tag head e tags de texto. Professor: Bruno Gomes

SIMULADOS & TUTORIAIS

Um esquema de nomes para localização de fontes de informação na Web, esse esquema chama-se URI.

JAVASCRIPT Laboratórios de Informática João Paulo Barraca, André Zúquete, Diogo Gomes

PROGRAMAÇÃO PARA INTERNET RICA FUNDAMENTOS DO CSS PARTE II

Disciplina: Desenvolvimento Web Professor: Paulo César Fernandes de Oliveira, BSc, PhD

Construção de Sites Aula 6

CSS Cascading Style Sheets (Folhas de Estilo em Cascata)

PROGRAMAÇÃO PARA INTERNET RICA INTRODUÇÃO AO ACTIONSCRIPT 3. Prof. Dr. Daniel Caetano

PROGRAMAÇÃO PARA INTERNET RICA FUNDAMENTOS DO CSS PARTE I

EMENTA: PHOTOSHOP PARA WEB

Construção de sites Aula 1

Desenvolvimento Web. Versão 2 Jan/2019. Professor Emiliano S. Monteiro

Desenvolvimento Web. HTML 5 Parte I. Prof. Vicente Paulo de Camargo

TAGS. O HTML trabalha com o sistema de tags (etiquetas). Esse sistema funciona da seguinte maneira. <tag>conteúdo da tag</tag>

Passo a passo para CRIAR E EDITAR CONTEÚDO DOS CURSOS

Os componentes HTML possuem a capacidade de configurar eventos

Redes de Computadores I Seminário Novas Tecnologias em Redes HTML5. Jessica da Silva Hahn Letícia Aparecida Coelho

Samus - Desenvolvimento Web - 14/11/2009 WebStandards Padrões de desenvolvimento Web

Autoria Web. Iniciação à JavaScript. Msc. Eliezio Soares

Tecnologias para Web Design

Desenvolvimento Web. Professor: Bruno E. G. Gomes

DreamweaverCC Plano de Aula - 24 Aulas (Aulas de 1 Hora).

Plano de Aula - DreamWeaver CC - cód Horas/Aula

Curso básico de JavaScript Aula 2

TECNOLOGIAS WEB. Unidade 3 Linguagem de Marcação e Estilo. Luiz Leão

SIMULADOS & TUTORIAIS

Aula 4 Arquitetura de software na Web atual: AJAX e Ajax. Prof: Dra. Renata Pontin de Mattos Fortes

PROGRAMAÇÃO PARA INTERNET RICA FUNDAMENTOS DO JAVASCRIPT

Programação para Internet I

Introdução ao HTML5 Canvas

#Trabalhando com Texto

JAVASCRIPT. Desenvolvimento Web I

PROGRAMAÇÃO PARA INTERNET RICA FUNDAMENTOS DO JAVASCRIPT

SCE Aula 3 Arquitetura de software na Web atual: processamento de lado cliente. Prof: Dra. Renata Pontin de Mattos Fortes

O que faz um servidor/navegador web? 14/03/2016 Rômulo da Silva Lima Slid e 2

CSS Organizado e simples. Cercomp Equipe Web Nícolas Lazarte -

XSL - extemsible Stylesheet Language. Prof. Antonio Almeida de Barros Jr.

Até agora aprendemos formas para nomear e processar dados em Javascript.

CSS CASCADING STYLE SHEET

Aula 17 Introdução ao jquery

Tópicos. Apresentando a família XML HTML HTML. XML extesible Markup Language. Problemas com o HTML

INTRODUÇÃO À PROGRAMAÇÃO EXERCÍCIO DE REVISÃO

Universidade Federal do Espírito Santo Centro de Ciências Agrárias CCA UFES Departamento de Computação. XML e JSON

HTML / JAVASCRIPT. A versão atual é o HTML5 (seus predecessores imediatos são HTML 4.01, XHTML 1.1, etc.).

Construção de SitesAula5

AULA 02 Introdução (HTML, CSS e Javascript) PROGRAMAÇÃO PARA WEB Marcelo Henrique dos Santos

AJAX. Aula 01 - Introdução

CSS [10] Desenvolvimento e Design de. Websites. Prof.: Ari Oliveira

CSS Cascading Style Sheets

Uma regra CSS quando válida para vários seletores, estes podem ser agrupados. Exemplo: h1, h2, h3, h4, h5, h6 { color: #00FF00; }

Introdução. Surge em 1995 (Brendan Eich, programador da Netscape) com o nome de Livescript

HTML & CSS. uma introdução

CSS ETEC FRANCISCO MORATO. Professores: Kelly e Rafael

JavaScript Introdução e Sintaxe

JavaScript. JavaScript é uma linguagem de script usada em navegadores web. É uma linguagem dinâmica, estruturada e orientada em objetos.

Edécio Fernando Iepsen

INTRODUÇÃO AO DESENVOLVIMENTO WEB. PROFª. M.Sc. JULIANA H Q BENACCHIO

<HTML> Vinícius Roggério da Rocha

HTML BÁSICO E TEMPLATE VIEW. Gabrielle Amorim Porto

Ao projeto inciado na aula anterior, faça as seguintes alterações:

Universidade Federal do Espírito Santo Centro de Ciências Agrárias CCA UFES Departamento de Computação. jquery

Aplicativos móveis com HTML5

Transcrição:

PROGRAMAÇÃO PARA INTERNET RICA DHTML E O DOCUMENT OBJECT MODEL Prof. Dr. Daniel Caetano 2011-2

Visão Geral 1 2 3 4 DHTML Document Object Model Manipulando o DOM Manipulando o CSS pelo DOM

Material de Estudo Material Notas de Aula Apresentação Material Didático Google Acesso ao Material http://www.caetano.eng.br/aulas/pir/ (Aula 8) http://www.caetano.eng.br/aulas/pir/ (Aula 8) Aprenda a Criar Páginas Web c/ HTML, páginas 609 a 648 + DOM +tutorial Web Sites http://www.w3.org/

Objetivos Apresentar os conceitos do DHTML Conceituar a estruturação dos objetos do DOM Compreender as diferentes formas de acessar os elementos do DOM TRABALHO 2a (turmas de 4ª)!

DHTML

Introdução Já vimos intuitivamente DHTML = HTML Dinâmico Uso de JavaScript para... Manipular aparência Manipular conteúdo Aplicações Web Manipulação precisa e inteligente do HTML/CSS

Introdução Manipulação precisa... Exige Conhecimento da estruturação dos elementos Conhecimento das formas de acessá-los Conhecimento das formas de modificá-los Estruturação dos elementos: DOM Document Object Model

O DOM: MODELO DE OBJETO DE DOCUMENTO

Modelo de Objeto de Documento Maneira de estrutura um documento XML em geral... serve para HTML e XHTML Árvore de nós Cada nó é um elemento Cada nó pode conter outros nós Nó raiz document

Modelo de Objeto de Documento Exemplo de Árvore DOM <html> <head> <title>exemplo</title> </head> <body> <h1>título</h1> <p>texto <i>simples</i>.</p> </body> </html> head title Exemplo h1 Título document html body p Texto i. simples

Modelo de Objeto de Documento document html head body title h1 p Exemplo Título Texto i. simples

Modelo de Objeto de Documento Exemplo de Árvore DOM <html> <head> <title>exemplo</title> </head> <body> <script type= text/javascript > <!-- head title Exemplo document.write( <p>olá!</p> ); --></script> <h1>título</h1> <p>texto <i>simples</i>.</p> </body> </html> p Olá! h1 Título document html body p Texto i. simples

MANIPULANDO O DOM

Manipulando o DOM As principais funções de manipulação são: getelementbyid( id ) Retorna um único elemento Existe apenas no objeto document getelementsbyname( nome ) Retorna um vetor de elementos Existe apenas no objeto document getelementsbytagname( tag ) Retorna um vetor de elementos Existe em todos os elementos do DOM

Manipulando o DOM getelementbyid - Exemplos var tmp = document.getelementbyid( artigo ); tmp.style.backgroundcolor = red; var tmp2 = document.getelementbyid( imagem ); tmp2.src = nova_imagem.jpg ;

Manipulando o DOM getelementsbyname - Exemplo var tmp = document.getelementsbyname( cpf ); if (tmp.length > 0) tmp[0].style.backgroundcolor = red; Cuidado! No XHTML... name só em formulários!

Manipulando o DOM getelementsbytagname - Exemplos var tmp = document.getelementsbytagname( p ); if (tmp.length > 0) tmp[0].style.backgroundcolor = red; OU var artigo = document.getelementbyid( artigo ); var tmp = artigo.getelementsbytagname( p ); if (tmp.length > 0) tmp[0].style.backgroundcolor = red;

Manipulando o DOM Todo elemento DOM tem propriedades partentnode Retorna o nó pai do nó atual childnodes Uma matriz de todos os filhos do nó atual firstchild Primeiro filho do nó atual lastchild Último filho do nó atual nodevalue O valor do elemento atual

Manipulando o DOM Todo elemento DOM tem propriedades nextsibling / previoussibling Elemento posterior/anterior ao atual Cuidado! <h1 id= a >Teste</h1>[espaço] <p>texto</p> var tmp = document.getelementbyid( a ); var tmp2 = tmp.nextsibling; tmp2.style.backgroundcolor = red ;

Manipulando o DOM Todo elemento DOM tem propriedades nextsibling / previoussibling ISSO DÁ ERRO! Elemento posterior/anterior ao atual Cuidado! Texto não tem <h1 propriedade id= a >Teste</h1>[espaço] style! <p>texto</p> var tmp = document.getelementbyid( a ); var tmp2 = tmp.nextsibling; tmp2.style.backgroundcolor = red ;

Manipulando o DOM Todo elemento DOM tem propriedades innerhtml Permite acrescentar um novo ramo ao elemento Pode-se escrever HTML normal, o navegador constrói tudo

Manipulando o DOM Todo elemento DOM tem propriedades innerhtml <h1 id= a >Teste</h1> var tmp = document.getelementbyid( a ); tmp.innerhtml = <em>novo</em> teste ; Tem o efeito de... <h1 id= a ><em>novo</em> teste</h1>

Manipulando o DOM E para apenas acrescentar algo? createelement( tag ) Cria um elemento Função do objeto document createtextnode( texto ) Cria um elemento de texto Função do objeto document appendchild(filhote) Acrescenta um filhote ao elemento atual Função de todos os elementos do DOM

Manipulando o DOM Exemplo var par = document.createelement( p ); var tex = document.createtextnode( Oi! ); par.appendchild(tex); var div = document.getelementbyid( artigo ); div.appendchild(par); No caso, o parágrafo será acrescentado como o último filhote do div artigo

Manipulando o DOM Mais algumas funções removechild(elemento) Remove um filho do elemento atual Função de todos os elementos do DOM replacechild(original, novo) Substitui um filho existente (original) por outro (novo) Função de todos os elementos do DOM

MANIPULANDO O CSS PELO DOM

Manipulando o CSS pelo DOM Há duas formas padronizadas de mudar CSS Modificando o atributo style dos elementos Cria/remove estilos inline no XHTML Basta alterar o atributo como temos visto document.body.style.color = blue ; var tmp = document.getelementbyid( local ); tmp.style.backgroundcolor = yellow ;

Manipulando o CSS pelo DOM Há duas formas padronizadas de mudar CSS Mudando a classe de um elemento Modifica o atributo class do elemento var tmp = document.getelementbyid( p1 ); p1.classname = outra ;

Manipulando o CSS pelo DOM Para adicionar uma classe: var tmp = document.getelementbyid( p1 ); p1.classname += outra ;

COMO LER O CSS?

Lendo o CSS com JavaScript Você já deve ter observado que... var cor = document.body.style.color; window.alert(cor); Só imprime a cor se ela estiver inline Como fazer para atributos do arquivo CSS?

Lendo o CSS com JavaScript Alguns atributos podem ser lidos diretamente offsetheight Altura em pixels do elemento offsetwidth Largura em pixels do elemento offsetleft Distância em pixels a partir do elemento da esquerda offsettop Distância em pixels a partir do elemento de cima

Lendo o CSS com JavaScript Mas e se eu quiser ler outros valores do CSS? Não tem um método padrão, então... Tem um código que testa os dois (IE x Outros)

Lendo o CSS com JavaScript function getstyle( elem, estilo ) { var valor = ; if (document.defaultview && document.defaultview.getcomputedstyle) { valor = document.defaultview.getcomputedstyle(elem, ); valor = valor.getpropertyvalue(estilo); } else if (elem.currentstyle) { estilo = estilo.replace(/\-(\w)/g, function(match,p1) { return p1.touppercase();}); valor = elem.currentstyle[estilo]; } return valor; }

Lendo o CSS com JavaScript Como usar isso? É mais fácil do que parece: var el = document.getelementbyid( artigo"); var cor = getstyle(el,"background-color");

CONCLUSÕES

Resumo O DOM permite uma forma de acessar diretamente todos os elementos do XHTML É possível adicionar, editar e remover elementos do XHTML pelo JavaScript, usando a estrutura do DOM O acesso direto aos valores do CSS não é padronizado, mas é possível usar um método que funciona em todos os navegadores TAREFA Trabalho 2a (para as turmas de 4ª)!

Próxima Aula Usando tudo isso para fazer algo útil Construir a Interface com o Usuário Aplicação Web: Jogo da Velha

PERGUNTAS?

BOM DESCANSO A TODOS!