O objetivo do jogo é deixar o quebra-cabeça em ordem, com o quadro vazio na última posição.
Meu primeiro programa grandinho de Javascript 🙂 Código-fonte aqui.
O objetivo do jogo é deixar o quebra-cabeça em ordem, com o quadro vazio na última posição.
Saà do Oi Controle para o Oi Cartão, mas como efeito eu tive que mudar meu número.
Alguém mais está tendo esse problema?
Navegando no meu outro blog, o eupodiatamatando.com, eu escuto num papoco na caixinha de som uma música chata tocando.
Mas que saco! Era só o que faltava, o Adsense, logo o Adsense fazendo um tipo de anuncio totalmente inadequado e que é repudiado por 99,99% dos usuários (os 0,01% restantes devem ser surdos).
Talvez bloqueando os anúncios de imagens ou bloqueando esse anunciante em especÃfico possa resolver esse problema, mas aà vou ter que mexer num monte de arquivos do meu template.
Que coisa feia hein Google?
Eu sempre achei o Twitter inútil e ridÃculo, mas hoje, depois de ter uma conta lá há anos finalmente eu consegui enxergar uma face útil nos mini-blogs como o twitter.
Por uma série de motivos que envolvem:
Finalmente eu vi que eu posso ficar blogando/microblogando/twitando, como queiram, enquanto eu estou dentro do ônibus ou esperando na fila do dentista. Pronto, acabou a monotonia! Não tenho mais que ler as mesmas revistinhas da Turma da Mônica pela milésima vez ou ler aquelas Caras que tem em absolutamente qualquer consultório de qualquer coisa.
Para a coisa fazer sentido eu estou colocando aqui na barra lateral direita uma seção mini-blog que é conectada com o RSS do meu twitter. Se a coisa ficar legal eu coloco um também no eupodiatamatando.com.
Eu testei essas configurações com um Nokia 3300 e com Nokia 6610i.
O lugar onde você tem que entrar com essas configurações varia de aparelho para aparelho, mas nos Nokia elas ficam em geral na seção chamada Serviços, geralmente identificada por um globo. Geralmente há várias Configurações de Conexão, o que você faz é criar uma nova e utiliza-la.
Aqui estão todos os dados que você vai precisar. Não se assuste, aqui tem mais dados do que você realmente vai precisar:
Nome: Oi WAP GPRS
Página principal: http://wap.oi.com.br
Tipo de Serviço: WAP Seguro
Gateway: 200.222.108.241
Porta 1: 9203
DomÃnio 1:
Tipo de Serviço 2: WAP Seguro
Gateway: 200.222.108.241
Porta 2: 9203
DomÃnio 2:
DNS 1: 000.000.000.000
DNS 2: 000.000.000.000
Tempo Expirado: 10 minutos
CSD No. 1:
Nome Usuário 1:
Senha 1:
Velocidade(Bps) 1: 9600
Linha Tipo 1: ISDN
CSD No. 2:
Nome Usuário 2:
Senha 2:
Velocidade(Bps) 2: 9600
Linha Tipo 2: ISDN
GPRS APN: wapgprs.oi.com.br
Nome do Usuário: oiwap
Senha: oioioi
Provavelmente o que você vai precisar é do APN, gateway (que no celular pode estar escrito IP), login e senha.
A Oi cobra R$ 0,008 por kb, mais ou menos um centavo por byte. Nos testes que eu fiz, entrar na versão móvel do twitter, me logar, postar um texto e sair custou 8 centavos. Nada mal.
Quase chegando onde eu tinha estacionado o carro eu escuto um barulho estranho, como que centenas de cacarejos.
Eu olho pra cima, pros lados e nada. Só uma rua deserta da cidade num dia ensolarado de sábado. Aà eu olho mais atentamente as árvores, cajueiros pra ser mais exato, e no meio das folhas eu vejo um pássaro verde, quase invisÃvel no meio das folhas. Mas ele sozinho não poderia produzir tanto barulho. Aà eu me dou conta que eram dezenas, talvez até centenas de pássaros igualmente verdes e igualmente camuflados na impossibilidade de haver tantos pássaros tão bonitos assim no meio da cidade.
Se ao menos eu estivesse com uma câmera. Mas pera aÃ. Eu estou com uma câmera digital no carro, e bem perto de onde eu estou. Minha curiosidade venceu o medo de ser assaltado numa rua onde todo mundo que eu conheço já foi assaltado.
Não entendo muito de pássaros, mas como todos eram desse mesmo tamanho, acho que eram periquitos. Infelizmente na foto só aparece um deles.
Deu até pra medir o quão minha curiosidade foi maior que meu medo, exatas duas fotos. Não mais do que isso, sob a pena de não tirar outras fotos tão cedo.
Um tutorial básico orientado a exemplos de como funcionam os vetores em JavaScript.
var planetas = new Array()
planetas[0] = "Mercúrio"
planetas[1] = "Vênus"
planetas[2] = "Terra"
planetas[3] = "Marte"
planetas[4] = "Júpiter"
planetas[5] = "Saturno"
planetas[6] = "Urano"
planetas[7] = "Neptuno"
for (i=0;i
Que vai escrever isso:
Mercúrio
Vênus
Terra
Marte
Júpiter
Saturno
Urano
Neptuno
var planetas = new Array()
planetas[0] = "Mercúrio"
planetas[1] = "Vênus"
planetas[2] = "Terra"
planetas[3] = "Marte"
planetas[4] = "Júpiter"
planetas[5] = "Saturno"
planetas[6] = "Urano"
planetas[7] = "Neptuno"
for (i in planetas){
document.write(planetas[i] + "")
}
vai retornar a mesma saÃda do primeiro programa:
Que vai escrever isso:
Mercúrio
Vênus
Terra
Marte
Júpiter
Saturno
Urano
Neptuno
var litoral = new Array()
litoral[0] = "Jericoacoara"
litoral[1] = "Paracuru"
litoral[2] = "Tabuba"
var sertao = new Array()
sertao[0] = "Itapipoca"
sertao[1] = "Ubajara"
sertao[2] = "Juazeiro"
var ceara = litoral.concat(sertao)
document.write(litoral+"
")
document.write(sertao+"
")
document.write(ceara+"
")
Jericoacoara,Paracuru,Tabuba
Itapipoca,Ubajara,Juazeiro
Jericoacoara,Paracuru,Tabuba,Itapipoca,Ubajara,Juazeiro
var letras = new Array(3)
letras[0] = "A"
letras[1] = "B"
letras[2] = "C"
document.write(letras.join() + "")
document.write(letras.join("@"))
A,B,C
A@B@C
Essa ordenação é feita sem usar nenhum parâmetro, então a ordem lexicográfica, a do dicionário.
var coisas = new Array(4)
coisas[0] = "casa"
coisas[1] = "bonde"
coisas[2] = "alvo"
coisas[3] = "dado"
document.write(coisas + "")
document.write(coisas.sort()+ "")
document.write(coisas + "")
Note que depois do .sort() o vetor é alterado.
casa,bonde,alvo,dado
alvo,bonde,casa,dado
alvo,bonde,casa,dado
A ordenação literal não vai funcionar bem nesse caso, então nos definimos uma função para ordenação. Ela deve retornar zero se ambos forem iguais, um número positivo se o primeiro for maior que o segundo e um número negativo se o segundo for maior que o primeiro.
function sortNumber(a, b){
return a - b
}
var arr = new Array(6)
arr[0] = "10"
arr[1] = "5"
arr[2] = "40"
arr[3] = "25"
arr[4] = "1000"
arr[5] = "1"
document.write(arr + "")
document.write(arr.sort()+"
")
document.write(arr.sort(sortNumber))
10,5,40,25,1000,1
1,10,1000,25,40,5
1,5,10,25,40,1000
O pop retorna o último elemento do vetor e o retira.
var gatos = new Array(3)
gatos[0] = "Frida"
gatos[1] = "Sauber"
gatos[2] = "Boris"
document.write(gatos + "")
document.write(gatos.pop() + "")
document.write(gatos)
Frida,Sauber,Boris
Boris
Frida,Sauber
O push insere um elemento no final do vetor e retorna seu novo tamanho.
var animais = new Array(3)
animais[0] = "Frida"
animais[1] = "Sauber"
animais[2] = "Frida"
document.write(animais + "")
document.write(animais.push("Vida")+ "")
document.write(animais)
Frida,Sauber,Frida
4
Frida,Sauber,Frida,Vida
var inst = new Array(3)
inst[0] = "Baixo"
inst[1] = "Guitarra"
inst[2] = "Piano"
document.write(inst + "")
document.write(inst.unshift("Flauta") + "")
document.write(inst)
Baixo,Guitarra,Piano
4
Flauta,Baixo,Guitarra,Piano
var inst = new Array(3)
inst[0] = "Baixo"
inst[1] = "Guitarra"
inst[2] = "Piano"
document.write(inst + "")
document.write(inst.shift() + "")
document.write(inst)
Baixo,Guitarra,Piano
Baixo
Guitarra,Piano
Aqui na página colocamos:
Que cria um input de texto com nome relógio e depois chamamos o script relogio.js que contém o seguinte código:
function proximo_segundo(){
var hoje = new Date
var hora = hoje.getHours()
var minutos = hoje.getMinutes()
var segundos = hoje.getSeconds()
relogio = document.getElementById('relogio')
relogio.value = hora +":"+minutos+":"+segundos
setTimeout('proximo_segundo()',1000)
}
proximo_segundo()
Ele cria um objeto Date, encontro o elemento com id ‘relogio’ e coloca no valor dele as informações extraÃdas do objeto Date. Em seguida ele agenda para daqui a um segundo chamar a si próprio, recursivamente.
Um refinamento que se pode fazer nesse código é uma função auxiliar para preencher com um zero à esquerda, transformando 1:2:3 em 01:02:03. Eu não coloquei isso para deixar o código o mais simples possÃvel.
Como eu ainda sou muito novinho no JavaScript eu não sei se usar uma recursão desse tipo é uma boa idéia ou não. Era isso ou um laço infinito.
Você deve estar vendo na caixinha de cima várias informações sobre o seu navegador.
O trecho do código JavaScript que gerou isso foi:
Cada um das variáveis lidas de navigator contém algum tipo de informação útil sobre as caracterÃsticas do navegador.
A cachorrinha nova da Ana Paula, o nome dela é Vida. Ela ainda é uma filhotinha e é da raça Pug.
É uma raça muito carinho, sociável, obediente e leal. Como eles tem vias nasais bem pequenas, eles tem jeito estranho de respirar. Para quem nunca esteve perto de um Pug antes, como eu, a impressão que se tem é que ele está doente ou sem conseguir respirar.
Conclusão: até o Mickey que é um rato tem um cachorro. Só eu que não tenho 🙁