SlideShare uma empresa Scribd logo
1 de 25
jQuery Iniciando (PARTE I)
Objetivos Nivelar conhecimentos sobre Javascript Apresentar o jQuery Não apenas utilizar, mas saber (de forma geral) como o jQuery funciona
Agenda Javascript Escopo Tipos OOP Eventos jQuery Introdução Vantagens Como funciona? Utilizando
ATENÇÃO Javascript NÃO É Java Javascript NÃO É Java Javascript NÃO É Java Javascript NÃO É Java Javascript NÃO É Java Javascript NÃO É Java
Javascript Linguagem de script dinâmica  e orientada à objetos Implementação da especificação ECMA-262 (ECMAScript) Utilizada primeiramente para dinamizar os elementos de uma página HTML É case sensitive
Javascript - escopo Podemos declarar variáveis e funções no contexto global ou no contexto local (privado)  Caso não utilizarmos var na declaração, será levado em consideração o contexto global referente ao contexto local
var i = 0; // global function teste() { 	var i = 0; // local returnfunction() // closure 	{ // aqui será utilizado o i do contexto da função teste() 		++i;  alert(i); 	} } var testando = teste(); testando(); alert(i); testando(); alert(i); testando(); alert(i);
Javascript - tipos Object Tudo em javascript é objeto Podem ser alterados em runtime Todos objetos possuem prototype (não deve-se alterar Object.prototype) onde podemos adicionar/alterar métodos e atributos Dados podem ser acessados utilizando “.” (obj.identificador) ou como índice de um array (obj[“identificador”])
Javascript - tipos Strings Objetos IMUTÁVEIS que contém um ou mais caracteres Métodos comuns: charAt(), indexOf(), toUpperCase(), toLowerCase(), replace(), split()
Javascript - tipos Number Objeto que representa valores numéricos Caso valor não puder ser representado numericamente é um NaN (not a number) Podem ser manipulados através de Math (Objeto para operações matemáticas)
Javascript - tipos Boolean Objeto que representa valores lógicos (true ou false) Permite converter objetos não booleanos através do construtor
Javascript - tipos Array Armazena mais de um valor em uma única variável Possui apenas índices NUMÉRICOS (a partir de ZERO) Métodos comuns: join(), push(), unshift(),  reverse(), pop(), shift(), sort()
Javascript - tipos Functions Podem ser nomeadas ou anônimas (Lambda e Closures) Qualquer função pode ser atribuída a uma variável (atenção em relação ao escopo)
Javascript - oop Definimos classes usando prototype e function Podemos criar métodos públicos, privados e privilegiados Podemos criar atributos públicos e privados Métodos e atributos privados apenas podem ser acessados por métodos privilegiados Podemos criar também dados estáticos
function Pessoa(nome, idade) { 		var nome = nome; // private 		var idade = idade; // private functionficaMaisVelho(inc) { idade += inc} // private this.toString = this.getNome = function() { return nome; } this.getIdade = function() { return idade; } this.come = function(qualidade) { if (qualidade < 4) { ficaMaisVelho(Math.abs(qualidade)); 			} else { ficaMaisVelho(qualidade/10); 			} 		} 		++Pessoa.populacao; } Pessoa.populacao = 0;
Pessoa.prototype.comePorcaria = function() { this.come(-2); } Pessoa.prototype.comeFruta = function() { this.come(10); } var fulano = new Pessoa(“Fulano”, 5); fulano.comePorcaria(); fulano.comeFruta(); alert(fulano + “ tem “ + fulano.getIdade() + “ anos”); alert(“existem “ + Pessoa.populacao + “ pessoa(s)”);
Javascript - eventos Através do javascript podemos manipular os eventos dos objetos Eventos comuns: onload, onclick, onfocus, onblur
jQuery “jQuery is a fast and concise JavaScript Library that simplifies HTML document traversing, event handling, animating, and Ajax interactions for rapid web development. jQuery is designed to change the way that you write JavaScript.”
jQuery - vantagens Simplifica a forma de trabalhar com Javascript É extensível É leve (31 kb a versão de produção) É cross-browser (como os plugins podem ser criados por qualquer pessoa, podem não manter a compatibilidade)
jQuery – como funciona? Basicamente é criada uma função jQuery() que retorna um objeto É criado um alias $ para esta função Quando você acessa $(document) você está chamando a função jQuery()  passando o objeto document por parâmetro Quando acessa $.ajax() está chamando o método ajax() do objeto criado pela função jQuery
jQuery – utilizando Para manipular um ou mais elementos apenas utilizamos $(SELETOR) Existem vários valores para o SELETOR os mais comuns são: seletor de tag, seletor de id e seletor de class
<script type=“text/javascript”> $(document).ready(function() { 	$(“a”).css(“border”, “9px solidred”); }); </script> <a href=“#”>teste1</a> <a href=“#”>teste2</a> <a href=“#”>teste3</a>
<script type=“text/javascript”> $(document).ready(function() { alert($(“#minhaDiv”).html()); }); </script> <div id=“minhaDiv”> 	<h1>Teste</h1> 	<p>Testando os dados!</p> </div>
<script type=“text/javascript”> $(document).ready(function() { 	$(“.teste”).css(“border”, “9px solidred”); }); </script> <a href=“#” class=“teste”>teste1</a> <a href=“#” class=“teste”>teste2</a> <a href=“#”>teste3</a>
Mais informações http://phrogz.net/js/classes/OOPinJS.html http://phrogz.net/js/classes/OOPinJS2.html http://www.w3schools.com/js http://docs.jquery.com

Mais conteúdo relacionado

Mais procurados

Javascript para CSharpers - Append B - jQuery
Javascript para CSharpers - Append B - jQueryJavascript para CSharpers - Append B - jQuery
Javascript para CSharpers - Append B - jQueryWesley Lemos
 
Javascript - Princípios da linguagem e utilização de frameworks
Javascript - Princípios da linguagem e utilização de frameworksJavascript - Princípios da linguagem e utilização de frameworks
Javascript - Princípios da linguagem e utilização de frameworksBruno Abrantes
 
T04_LM3: Javascript (2013-2014)
T04_LM3: Javascript (2013-2014)T04_LM3: Javascript (2013-2014)
T04_LM3: Javascript (2013-2014)Carlos Santos
 
JavaScript Model-View no Frontend
JavaScript Model-View no FrontendJavaScript Model-View no Frontend
JavaScript Model-View no FrontendHenrique Gogó
 
Javascript - Biblioteca Jquery
Javascript - Biblioteca JqueryJavascript - Biblioteca Jquery
Javascript - Biblioteca JqueryMultside Digital
 
Minicurso de JavaScript (Portuguese)
Minicurso de JavaScript (Portuguese)Minicurso de JavaScript (Portuguese)
Minicurso de JavaScript (Portuguese)Bruno Grange
 
POO - 01 - Introdução ao Paradigma Orientado a Objetos
POO - 01 - Introdução ao Paradigma Orientado a ObjetosPOO - 01 - Introdução ao Paradigma Orientado a Objetos
POO - 01 - Introdução ao Paradigma Orientado a ObjetosLudimila Monjardim Casagrande
 
Backbone.js + Rails - Front-end e back-end conectados
Backbone.js + Rails - Front-end e back-end conectadosBackbone.js + Rails - Front-end e back-end conectados
Backbone.js + Rails - Front-end e back-end conectadosHenrique Gogó
 
Javascript levado a serio
Javascript levado a serioJavascript levado a serio
Javascript levado a serioJaydson Gomes
 
Java: Introdução à Orientação a Objetos
Java: Introdução à Orientação a ObjetosJava: Introdução à Orientação a Objetos
Java: Introdução à Orientação a ObjetosArthur Emanuel
 
jQuery - A poderosa Biblioteca JavaScript - Minicurso
jQuery - A poderosa Biblioteca JavaScript - MinicursojQuery - A poderosa Biblioteca JavaScript - Minicurso
jQuery - A poderosa Biblioteca JavaScript - MinicursoCloves Moreira Junior
 

Mais procurados (20)

jQuery na Prática!
jQuery na Prática!jQuery na Prática!
jQuery na Prática!
 
Javascript para CSharpers - Append B - jQuery
Javascript para CSharpers - Append B - jQueryJavascript para CSharpers - Append B - jQuery
Javascript para CSharpers - Append B - jQuery
 
Javascript - Princípios da linguagem e utilização de frameworks
Javascript - Princípios da linguagem e utilização de frameworksJavascript - Princípios da linguagem e utilização de frameworks
Javascript - Princípios da linguagem e utilização de frameworks
 
T04_LM3: Javascript (2013-2014)
T04_LM3: Javascript (2013-2014)T04_LM3: Javascript (2013-2014)
T04_LM3: Javascript (2013-2014)
 
JavaScript Model-View no Frontend
JavaScript Model-View no FrontendJavaScript Model-View no Frontend
JavaScript Model-View no Frontend
 
Javascript - Biblioteca Jquery
Javascript - Biblioteca JqueryJavascript - Biblioteca Jquery
Javascript - Biblioteca Jquery
 
Aula javascript
Aula  javascriptAula  javascript
Aula javascript
 
Introdução a jQuery
Introdução a jQueryIntrodução a jQuery
Introdução a jQuery
 
Minicurso de JavaScript (Portuguese)
Minicurso de JavaScript (Portuguese)Minicurso de JavaScript (Portuguese)
Minicurso de JavaScript (Portuguese)
 
POO - 01 - Introdução ao Paradigma Orientado a Objetos
POO - 01 - Introdução ao Paradigma Orientado a ObjetosPOO - 01 - Introdução ao Paradigma Orientado a Objetos
POO - 01 - Introdução ao Paradigma Orientado a Objetos
 
Backbone.js + Rails - Front-end e back-end conectados
Backbone.js + Rails - Front-end e back-end conectadosBackbone.js + Rails - Front-end e back-end conectados
Backbone.js + Rails - Front-end e back-end conectados
 
Ajax em java
Ajax em javaAjax em java
Ajax em java
 
Java script aula 06 - dom
Java script   aula 06 - domJava script   aula 06 - dom
Java script aula 06 - dom
 
Javascript levado a serio
Javascript levado a serioJavascript levado a serio
Javascript levado a serio
 
Java script aula 07 - j-query
Java script   aula 07 - j-queryJava script   aula 07 - j-query
Java script aula 07 - j-query
 
Java: Introdução à Orientação a Objetos
Java: Introdução à Orientação a ObjetosJava: Introdução à Orientação a Objetos
Java: Introdução à Orientação a Objetos
 
Javascript + jQuery
Javascript + jQueryJavascript + jQuery
Javascript + jQuery
 
jQuery - A poderosa Biblioteca JavaScript - Minicurso
jQuery - A poderosa Biblioteca JavaScript - MinicursojQuery - A poderosa Biblioteca JavaScript - Minicurso
jQuery - A poderosa Biblioteca JavaScript - Minicurso
 
POO - 24 - Classes Básicas do Java - Datas
POO - 24 - Classes Básicas do Java - DatasPOO - 24 - Classes Básicas do Java - Datas
POO - 24 - Classes Básicas do Java - Datas
 
Java: Introdução
Java: IntroduçãoJava: Introdução
Java: Introdução
 

Destaque

A minha sala é uma cartola de magia
A minha sala é uma cartola de magiaA minha sala é uma cartola de magia
A minha sala é uma cartola de magiaLiliana Rocha
 
Quiksilver (Powered By Motion)
Quiksilver (Powered By Motion)Quiksilver (Powered By Motion)
Quiksilver (Powered By Motion)skrub_inc
 
Presumed Incompetent: The Intersections of Race and Class for Women in Academia
Presumed Incompetent: The Intersections of Race and Class for Women in AcademiaPresumed Incompetent: The Intersections of Race and Class for Women in Academia
Presumed Incompetent: The Intersections of Race and Class for Women in AcademiaCarmen G. Gonzalez
 
Cooperative learning with_carousel_brainstormi
Cooperative learning with_carousel_brainstormiCooperative learning with_carousel_brainstormi
Cooperative learning with_carousel_brainstormiWheeler School
 
Self portrait assignment
Self portrait assignmentSelf portrait assignment
Self portrait assignmentJulie Sawyer
 

Destaque (7)

A minha sala é uma cartola de magia
A minha sala é uma cartola de magiaA minha sala é uma cartola de magia
A minha sala é uma cartola de magia
 
Quiksilver (Powered By Motion)
Quiksilver (Powered By Motion)Quiksilver (Powered By Motion)
Quiksilver (Powered By Motion)
 
Presumed Incompetent: The Intersections of Race and Class for Women in Academia
Presumed Incompetent: The Intersections of Race and Class for Women in AcademiaPresumed Incompetent: The Intersections of Race and Class for Women in Academia
Presumed Incompetent: The Intersections of Race and Class for Women in Academia
 
Cooperative learning with_carousel_brainstormi
Cooperative learning with_carousel_brainstormiCooperative learning with_carousel_brainstormi
Cooperative learning with_carousel_brainstormi
 
Self portrait assignment
Self portrait assignmentSelf portrait assignment
Self portrait assignment
 
Oa
OaOa
Oa
 
Id
IdId
Id
 

Semelhante a jQuery básico (parte 1)

Minicurso javascript
Minicurso javascriptMinicurso javascript
Minicurso javascriptLucas Aquiles
 
Evolução e futuro do uso de paradigmas no JavaScript
Evolução e futuro do uso de paradigmas no JavaScriptEvolução e futuro do uso de paradigmas no JavaScript
Evolução e futuro do uso de paradigmas no JavaScriptJean Carlo Emer
 
T11_LM3: Subalgoritmose colisões (2013-2014)
T11_LM3: Subalgoritmose colisões (2013-2014)T11_LM3: Subalgoritmose colisões (2013-2014)
T11_LM3: Subalgoritmose colisões (2013-2014)Carlos Santos
 
Aula 1 - Linguagem III
Aula 1 - Linguagem IIIAula 1 - Linguagem III
Aula 1 - Linguagem IIIJuliano Weber
 
jQuery básico (parte 2)
jQuery básico (parte 2)jQuery básico (parte 2)
jQuery básico (parte 2)Luís Cobucci
 
Apostilava Java EE 5 - 2007
Apostilava Java EE 5 - 2007Apostilava Java EE 5 - 2007
Apostilava Java EE 5 - 2007Rafael Benevides
 
Desenvolvimento Front end (AngularJS e Bootstrap)
Desenvolvimento Front end (AngularJS e Bootstrap)Desenvolvimento Front end (AngularJS e Bootstrap)
Desenvolvimento Front end (AngularJS e Bootstrap)Julian Cesar
 
(A11) LabMM3 - JavaScript - Subalgoritmos e scope
(A11) LabMM3 - JavaScript - Subalgoritmos e scope(A11) LabMM3 - JavaScript - Subalgoritmos e scope
(A11) LabMM3 - JavaScript - Subalgoritmos e scopeCarlos Santos
 
Apostila de ext js com php e postgresql v1.0
Apostila de ext js com php e postgresql v1.0Apostila de ext js com php e postgresql v1.0
Apostila de ext js com php e postgresql v1.0Luciano Marwell
 
ODIG - Javascript, DOM Elements e jQuery
ODIG - Javascript, DOM Elements e jQueryODIG - Javascript, DOM Elements e jQuery
ODIG - Javascript, DOM Elements e jQueryMarketing Digital ODIG
 
Desevolvimento Web Client-side - jQuery
Desevolvimento Web Client-side - jQueryDesevolvimento Web Client-side - jQuery
Desevolvimento Web Client-side - jQueryGuilherme
 
Apresentação sobre MVVMC
Apresentação sobre MVVMCApresentação sobre MVVMC
Apresentação sobre MVVMCAlisson Agiani
 
Introdução ao jquery
Introdução ao jqueryIntrodução ao jquery
Introdução ao jqueryYuri Costa
 
Melhorando a Experiência do Usuário com JavaScript e jQuery
Melhorando a Experiência do Usuário com JavaScript e jQueryMelhorando a Experiência do Usuário com JavaScript e jQuery
Melhorando a Experiência do Usuário com JavaScript e jQueryHarlley Oliveira
 
Apostila de ext js com php e postgresql v1.3
Apostila de ext js com php e postgresql v1.3Apostila de ext js com php e postgresql v1.3
Apostila de ext js com php e postgresql v1.3Luciano Marwell
 

Semelhante a jQuery básico (parte 1) (20)

Minicurso javascript
Minicurso javascriptMinicurso javascript
Minicurso javascript
 
JQuery
JQuery JQuery
JQuery
 
OOP Java
OOP JavaOOP Java
OOP Java
 
Evolução e futuro do uso de paradigmas no JavaScript
Evolução e futuro do uso de paradigmas no JavaScriptEvolução e futuro do uso de paradigmas no JavaScript
Evolução e futuro do uso de paradigmas no JavaScript
 
T11_LM3: Subalgoritmose colisões (2013-2014)
T11_LM3: Subalgoritmose colisões (2013-2014)T11_LM3: Subalgoritmose colisões (2013-2014)
T11_LM3: Subalgoritmose colisões (2013-2014)
 
Java e orientação a objetos
Java e orientação a objetosJava e orientação a objetos
Java e orientação a objetos
 
Aula 1 - Linguagem III
Aula 1 - Linguagem IIIAula 1 - Linguagem III
Aula 1 - Linguagem III
 
jQuery básico (parte 2)
jQuery básico (parte 2)jQuery básico (parte 2)
jQuery básico (parte 2)
 
Ajax continuação
Ajax continuaçãoAjax continuação
Ajax continuação
 
Apostilava Java EE 5 - 2007
Apostilava Java EE 5 - 2007Apostilava Java EE 5 - 2007
Apostilava Java EE 5 - 2007
 
Desenvolvimento Front end (AngularJS e Bootstrap)
Desenvolvimento Front end (AngularJS e Bootstrap)Desenvolvimento Front end (AngularJS e Bootstrap)
Desenvolvimento Front end (AngularJS e Bootstrap)
 
(A11) LabMM3 - JavaScript - Subalgoritmos e scope
(A11) LabMM3 - JavaScript - Subalgoritmos e scope(A11) LabMM3 - JavaScript - Subalgoritmos e scope
(A11) LabMM3 - JavaScript - Subalgoritmos e scope
 
Apostila de ext js com php e postgresql v1.0
Apostila de ext js com php e postgresql v1.0Apostila de ext js com php e postgresql v1.0
Apostila de ext js com php e postgresql v1.0
 
Aula2
Aula2Aula2
Aula2
 
ODIG - Javascript, DOM Elements e jQuery
ODIG - Javascript, DOM Elements e jQueryODIG - Javascript, DOM Elements e jQuery
ODIG - Javascript, DOM Elements e jQuery
 
Desevolvimento Web Client-side - jQuery
Desevolvimento Web Client-side - jQueryDesevolvimento Web Client-side - jQuery
Desevolvimento Web Client-side - jQuery
 
Apresentação sobre MVVMC
Apresentação sobre MVVMCApresentação sobre MVVMC
Apresentação sobre MVVMC
 
Introdução ao jquery
Introdução ao jqueryIntrodução ao jquery
Introdução ao jquery
 
Melhorando a Experiência do Usuário com JavaScript e jQuery
Melhorando a Experiência do Usuário com JavaScript e jQueryMelhorando a Experiência do Usuário com JavaScript e jQuery
Melhorando a Experiência do Usuário com JavaScript e jQuery
 
Apostila de ext js com php e postgresql v1.3
Apostila de ext js com php e postgresql v1.3Apostila de ext js com php e postgresql v1.3
Apostila de ext js com php e postgresql v1.3
 

jQuery básico (parte 1)

  • 2. Objetivos Nivelar conhecimentos sobre Javascript Apresentar o jQuery Não apenas utilizar, mas saber (de forma geral) como o jQuery funciona
  • 3. Agenda Javascript Escopo Tipos OOP Eventos jQuery Introdução Vantagens Como funciona? Utilizando
  • 4. ATENÇÃO Javascript NÃO É Java Javascript NÃO É Java Javascript NÃO É Java Javascript NÃO É Java Javascript NÃO É Java Javascript NÃO É Java
  • 5. Javascript Linguagem de script dinâmica e orientada à objetos Implementação da especificação ECMA-262 (ECMAScript) Utilizada primeiramente para dinamizar os elementos de uma página HTML É case sensitive
  • 6. Javascript - escopo Podemos declarar variáveis e funções no contexto global ou no contexto local (privado) Caso não utilizarmos var na declaração, será levado em consideração o contexto global referente ao contexto local
  • 7. var i = 0; // global function teste() { var i = 0; // local returnfunction() // closure { // aqui será utilizado o i do contexto da função teste() ++i; alert(i); } } var testando = teste(); testando(); alert(i); testando(); alert(i); testando(); alert(i);
  • 8. Javascript - tipos Object Tudo em javascript é objeto Podem ser alterados em runtime Todos objetos possuem prototype (não deve-se alterar Object.prototype) onde podemos adicionar/alterar métodos e atributos Dados podem ser acessados utilizando “.” (obj.identificador) ou como índice de um array (obj[“identificador”])
  • 9. Javascript - tipos Strings Objetos IMUTÁVEIS que contém um ou mais caracteres Métodos comuns: charAt(), indexOf(), toUpperCase(), toLowerCase(), replace(), split()
  • 10. Javascript - tipos Number Objeto que representa valores numéricos Caso valor não puder ser representado numericamente é um NaN (not a number) Podem ser manipulados através de Math (Objeto para operações matemáticas)
  • 11. Javascript - tipos Boolean Objeto que representa valores lógicos (true ou false) Permite converter objetos não booleanos através do construtor
  • 12. Javascript - tipos Array Armazena mais de um valor em uma única variável Possui apenas índices NUMÉRICOS (a partir de ZERO) Métodos comuns: join(), push(), unshift(), reverse(), pop(), shift(), sort()
  • 13. Javascript - tipos Functions Podem ser nomeadas ou anônimas (Lambda e Closures) Qualquer função pode ser atribuída a uma variável (atenção em relação ao escopo)
  • 14. Javascript - oop Definimos classes usando prototype e function Podemos criar métodos públicos, privados e privilegiados Podemos criar atributos públicos e privados Métodos e atributos privados apenas podem ser acessados por métodos privilegiados Podemos criar também dados estáticos
  • 15. function Pessoa(nome, idade) { var nome = nome; // private var idade = idade; // private functionficaMaisVelho(inc) { idade += inc} // private this.toString = this.getNome = function() { return nome; } this.getIdade = function() { return idade; } this.come = function(qualidade) { if (qualidade < 4) { ficaMaisVelho(Math.abs(qualidade)); } else { ficaMaisVelho(qualidade/10); } } ++Pessoa.populacao; } Pessoa.populacao = 0;
  • 16. Pessoa.prototype.comePorcaria = function() { this.come(-2); } Pessoa.prototype.comeFruta = function() { this.come(10); } var fulano = new Pessoa(“Fulano”, 5); fulano.comePorcaria(); fulano.comeFruta(); alert(fulano + “ tem “ + fulano.getIdade() + “ anos”); alert(“existem “ + Pessoa.populacao + “ pessoa(s)”);
  • 17. Javascript - eventos Através do javascript podemos manipular os eventos dos objetos Eventos comuns: onload, onclick, onfocus, onblur
  • 18. jQuery “jQuery is a fast and concise JavaScript Library that simplifies HTML document traversing, event handling, animating, and Ajax interactions for rapid web development. jQuery is designed to change the way that you write JavaScript.”
  • 19. jQuery - vantagens Simplifica a forma de trabalhar com Javascript É extensível É leve (31 kb a versão de produção) É cross-browser (como os plugins podem ser criados por qualquer pessoa, podem não manter a compatibilidade)
  • 20. jQuery – como funciona? Basicamente é criada uma função jQuery() que retorna um objeto É criado um alias $ para esta função Quando você acessa $(document) você está chamando a função jQuery() passando o objeto document por parâmetro Quando acessa $.ajax() está chamando o método ajax() do objeto criado pela função jQuery
  • 21. jQuery – utilizando Para manipular um ou mais elementos apenas utilizamos $(SELETOR) Existem vários valores para o SELETOR os mais comuns são: seletor de tag, seletor de id e seletor de class
  • 22. <script type=“text/javascript”> $(document).ready(function() { $(“a”).css(“border”, “9px solidred”); }); </script> <a href=“#”>teste1</a> <a href=“#”>teste2</a> <a href=“#”>teste3</a>
  • 23. <script type=“text/javascript”> $(document).ready(function() { alert($(“#minhaDiv”).html()); }); </script> <div id=“minhaDiv”> <h1>Teste</h1> <p>Testando os dados!</p> </div>
  • 24. <script type=“text/javascript”> $(document).ready(function() { $(“.teste”).css(“border”, “9px solidred”); }); </script> <a href=“#” class=“teste”>teste1</a> <a href=“#” class=“teste”>teste2</a> <a href=“#”>teste3</a>
  • 25. Mais informações http://phrogz.net/js/classes/OOPinJS.html http://phrogz.net/js/classes/OOPinJS2.html http://www.w3schools.com/js http://docs.jquery.com