- Fórum WMO
- → fiote's Content
fiote's Content
There have been 31 items by fiote (Search limited from 07/06/2023)
#958342 Ao Clicar No Link, Mostra A Div, Ao Clicar Em Outro Lugar, Oculta A Di
Posted by fiote on 19/02/2009, 06:50 in Javascript / DOM / AJAX / ECMAScript
E não, colocar na <body> não funciona (eu testei antes de passar meu código ^^), porque ele 'sobrepoe' a div atual dele e mesmo clicando nela mesma vai fazer com que ela se feche.
#958212 Ao Clicar No Link, Mostra A Div, Ao Clicar Em Outro Lugar, Oculta A Di
Posted by fiote on 18/02/2009, 08:12 in Javascript / DOM / AJAX / ECMAScript
<script language="javascript"> function escondeDiv() { document.getElementById('div').style.display = 'none'; } </script> <div id='divOculta' style='width:99%; height:99%; z-index:1; position:absolute' onClick='escondeDiv()'> </div> <div id='suaDiv' style='width:300px; height:300px; z-index:2; position:relative; border:1px solid red'> Oi rs </div>
A divOculta é o elemento que vai receber o click que chamará a função. Como setamos a posição como absolute, ela vai começar no top-left da página e não atrapalhará nenhum outro objeto. Em relação à suaDiv, você deve manter a posição como relative e um zIndex superior ao da divOculta, para ter certeza que suaDiv estará 'por cima' da divOculta.
#958427 Menu Dropdown - Jquery
Posted by fiote on 19/02/2009, 16:35 in Frameworks e Plug-ins de Javascript
.slideToggle("slow").siblings("ul.menu:visible").slideUp("slow");correto?
Eu não sei que biblioteca/framework usa essas funções para exibir um objeto, mas você precisa achar as funções pra esconder o mesmo. Provavelmente você já sabe, só não entendeu o que eu falei xD
#958487 Menu Dropdown - Jquery
Posted by fiote on 20/02/2009, 00:23 in Frameworks e Plug-ins de Javascript
O codigo final ficou da seguinte maneira:
$(document).ready(function(){ $(".meuRoll ul.menu").addClass(" invisivel"); $(".meuRoll h2").click(function() { $(".meuRoll h2").next("ul.menu").slideUp("slow"); $(this).next("ul.menu").slideToggle("slow").siblings("ul.menu:visible").slideUp("slow"); }); });
A partir do codigo que me indicou, apenas retirei alguns $ que estavam duplicados e no local de onde indicou para que eu preenchesse, inseri slideUp("slow");.
Que estranho você usar slideUp pra esconder os menus.. pelo que eu li, slideUp é pra exibir, e slideDown é pra esconder, mas ok que bom que funcionou lol.
Você não entendeu a mudança que eu fiz? Ok, vou explicar ^^
Como você queria que os outros se escondessem ao clicar, eu adicionei (e vc completou) a linha $("meuRoll h2").next("ul.menu").slideUp("slow");
Isto é, vai aplicar .next("ul.menu").slideUp("slow"); para todos os $(".meuRoll h2").
Você então comentou que se vc clicasse no que já estava aberto, ele se fechava e abria logo em seguida, eu postei uma solução (sem explicar) e vc falou que deu erro. Sim, o código tá errado por dois motivos. Faltaram algumas letras (código errado) e a idéia estava errada também. Sobre a duplicidade dos $$, tem algo no mootools sobre usar duplo cifrão e me confundi xD
Agora vai a solução correta, com explicação:
$(document).ready(function(){ $(".meuRoll ul.menu").addClass(" invisivel"); $(".meuRoll h2").click(function() { var estaOculto = $(this).next("ul.menu").is(":hidden"); $(".meuRoll h2").next("ul.menu").slideUp("slow"); if (estaOculto) $(this).next("ul.menu").slideToggle("slow").siblings("ul.menu:visible").slideUp("slow"); }); });
Ok, quando clicamos no objeto temos 3 comandos agora:
var estaOculto = $(this).next("ul.menu").is(":hidden");A variável estaOculto recebe true caso o menu esteja fechado, ou false se ele estiver aberto.
$(".meuRoll h2").next("ul.menu").slideUp("slow");Aqui nós fechamos todos os menus.
if (estaOculto) $(this).next("ul.menu").slideToggle("slow").siblings("ul.menu:visible").slideUp("slow");Essa era a linha que exibia o menu clicado na hora. Porém, o problema antes era que, se ele clicasse num que já estava aberto, o código iria fechar todos (inclusive ele), e então o abriria denovo (afinal, vc clicou nele). Com essa mudança, o clicado só vai abrir se ele estiver fechado no momento do clique.
Acho que agora vai
#958436 Menu Dropdown - Jquery
Posted by fiote on 19/02/2009, 16:51 in Frameworks e Plug-ins de Javascript
Só pra fazer um teste, tira o .slideToggle("slow") da linha que exibe o menu pra ver se faz alguma diferença.
#958422 Menu Dropdown - Jquery
Posted by fiote on 19/02/2009, 16:22 in Frameworks e Plug-ins de Javascript
HTML
<div id="roll" class="meuRoll"> <h2>Exemplos - 01 a 10</h2> <ul class="menu"> <li><a href="#">- Exemplo 1</a></li> <li><a href="#">- Exemplo 2</a></li> <li><a href="#">- Exemplo 3</a></li> </ul> </div> <div id="roll2" class="meuRoll"> <h2>Exemplos - 11 a 20</h2> <ul class="menu"> <li><a href="#">- Exemplo 1</a></li> <li><a href="#">- Exemplo 2</a></li> <li><a href="#">- Exemplo 3</a></li> </ul> </div>
JS
$(document).ready(function(){ $$(".meuRoll ul.menu").addClass(" invisivel"); $$(".meuRoll h2").click(function() { $$(".meuRoll h2").next("ul.menu").FUNCOES_PRA_ESCONDER_O_MENU(); $(this).next("ul.menu").slideToggle("slow").siblings("ul.menu:visible").slideUp("slow"); }); });
Substitui o FUNCOES_PRA_ESCONDER_O_MENU ae =P
#958441 Menu Dropdown - Jquery
Posted by fiote on 19/02/2009, 17:21 in Frameworks e Plug-ins de Javascript
$(document).ready(function(){ $$(".meuRoll ul.menu").addClass(" invisivel"); $$(".meuRoll h2").click(function() { var original = $(this); $(".meuRoll h2").each( function(i) { if (original != $(this)) $(this).next("ul.menu").siblings("ul.menu:visible").slideDown("slow"); } $(this).next("ul.menu").siblings("ul.menu:visible").slideUp("slow"); }); });
Acho que isso resolve o problema.
#970292 Como Desencriptar Html ?
Posted by fiote on 09/06/2009, 16:02 in Javascript / DOM / AJAX / ECMAScript
=(
(apesar de não ter nada de interessante no código, rofl)
#958875 Chamar Div A Partir De Um Asp
Posted by fiote on 25/02/2009, 19:24 in Javascript / DOM / AJAX / ECMAScript
Sobre o valor da função, a alteração abaixo resolveria.
document.write('<iframe src="iframe.asp?valor='+id+'" frameborder="0" width="650" height="550" marginheight="0" marginwidth="0" scrolling="no"></iframe>');
Pra fazer o que você quer, você terá que criar o elemento ao chamar a função.
Eu estou acustumado ao Mootools e não sei o código javascript puro para fazê-lo. No meu caso seria algo assim:
var Div = new Element('div').set('style','display:block; position:absolute; left:0px; top:0px; height:100%; width:100%; z-index:1;'); Div.innerHTML = '<iframe src="iframe.asp?valor='+id+'" frameborder="0" width="650" height="550" marginheight="0" marginwidth="0" scrolling="no"></iframe>'; Div.inject(document.body);
Ou algo assim...
#958841 Chamar Div A Partir De Um Asp
Posted by fiote on 25/02/2009, 14:55 in Javascript / DOM / AJAX / ECMAScript
Se o que falta é a FUNCAO_DIV, aqui vai algo que possa usar:
<script> function FUNCAO_DIV(id) { document.getElementById(id).style.display = 'block'; } </script>
#958911 Chamar Div A Partir De Um Asp
Posted by fiote on 26/02/2009, 09:37 in Javascript / DOM / AJAX / ECMAScript
var Div = new Element('div').set('style','display:block; position:absolute; left:0px; top:0px; height:100%; width:100%; z-index:1;');
Para:
var Div = new Element('div').set('style','display:block; position:absolute; left:0px; top:0px; height:100%; width:100%; z-index:1;'); Div.set('id','div_'+id);
Pronto, agora nossa Div tem um ID.
function fechaDiv(id) { document.getElementById('div_'+id).style.display = 'none'; }
#958511 Javascript No Firefox
Posted by fiote on 20/02/2009, 10:10 in Javascript / DOM / AJAX / ECMAScript
HTML
<input name='meuInput' type='text' size=30 value='rsrs'>
JS
alert( document.getElementById('meuInput').value );
Se você executar o JS no FF, ele vai dar um erro tipo não foi possível encontrar o objeto de id "meuInput". Isso porque, como está bem claro, a função é getElementById, e não existe nenhum elemento de id "meuInput" na página.
Porém, se você executar o JS no IE, ele vai dar alert('rsrs') de boa. Porque? O IE, ao não encontrar o ID passado na função, automaticamente procura por elementos que tenham o NAME igual ao id passado.
Bom? Não sei... opinião de cada um. Na minha é algo muito desorganizado.
Anyway, http://www.w3schools.../JS/default.asp. Pelo que eu sei, w3 é tipo o padrão da internet. Aprenda nele e conseguirá programar JS para qualquer navegador.
#958343 Codigo Não Funciona No Firefox
Posted by fiote on 19/02/2009, 07:00 in Javascript / DOM / AJAX / ECMAScript
<script> function selecionar(indice_atual){ // pega todos os indices e coloca cor padrão pai_camadas = document.getElementById("col_camadas"); var conta_elem = pai_camadas.getElementsByTagName("tr").length; for(u=0;u<conta_elem;u++){ elem = pai_camadas.getElementsByTagName("tr")[u]; elem.style.backgroundColor="#FFFFFF"; elem.style.color="#000000"; } //seleciona o indice atual document.getElementById(indice_atual).style.backgroundColor="#0000FF"; document.getElementById(indice_atual).style.color = "#FFFFFF"; // pega nome camada atual e seta var camada_atual = document.getElementById( indice_atual ).innerHTML; document.cform2.seltext.value = camada_atual; } </script>
Agora ele funciona tanto no IE quanto no FireFox ^^
#958416 Dúvida Ajax
Posted by fiote on 19/02/2009, 15:26 in Ajax
Eu sei que tem como usar ajax 'puro', mas eu por exemplo uso o framework MooTools para fazer tais requisições e talz (updates dinâmicos, chats, requests, etc).
1) baixe os arquivos
http://mootools.net/download
2) pagina.php, incluir os arquivos
<script src='caminhoProMootools.js'></script>
3) pagina.php, criar uma função para buscar os dados
<script> function buscaDados() { var meuRequest = new Request({ url: 'paginaBanco.php', method: 'post', data: 'Id_Tal=413&Nm_Tal=Fulano', onSuccess: function(retorno) { alert(retorno); } }); meuRequest.send(); } </script>
4) paginaBanco.php criar uma página que vai buscar a informação no banco
Nesse caso aqui, seria um pagina php que teria algumas linhas básicas como:
<?php $id = $_POST['Id_Tal']; $nome = $_POST['Nm_Tal']; $busca = mysql_query("select email from minhaTabela where id = $id and nome = '$nome'"); $result = mysql_fetch_array($busca); echo $result['email']; ?>>
Juntando o 3 e 4:
- O request escolhe o método (no caso post), o endereço destino (paginaBanco.php), os parametros (id_tal e nm_tal).
- Quando vc executa o send(), ele vai no endereço, executa a pagina, e qualquer coisa que estiver escrito na página vem na variavel "retorno" do onSuccess.
- no meu caso, vai retornar o email da pessoa e dar um alert nele. Vc pode fazer o que quiser.
Vale lembrar que "success" não quer dizer exatamente sucesso. Só quer dizer que ele conseguiu acessar a página. se por exemplo sua query estiver errada, a variavel retorno vai conter algo como "cannot execute sql query etc etc etc".
Outras informações aqui ó http://mootools.net/...Request/Request
#958064 Tem Como Fazer Um Igual A Esse?
Posted by fiote on 17/02/2009, 03:04 in HTML, CSS e Metodologias
Sobre a sombra, você pode usar efeitos de onMouseOver e onMouseOut.
Para a imagem azul, é simplesmente o plano de fundo.
#958065 Como Fazer Esse Efeito?
Posted by fiote on 17/02/2009, 03:07 in Javascript / DOM / AJAX / ECMAScript
Crie vários divs, um pra cada grupo de 4 produtos (como no exemplo), ao clicar no play, ele esconde o div atual e mostra o seguinte.
Porém, se você quer fazer o efeito bonitinho de movimento e talz, pode usar frameworks (como o mootools), que vão facilitar a sua vida nessa tarefa.
#958778 Se Ano E Bisexto
Posted by fiote on 24/02/2009, 17:07 in Javascript / DOM / AJAX / ECMAScript
if ((ano % 4 == 0) || (ano % 100 == 0) || (ano % 400 == 0))
Quando deveria usar:
if (ano % 400 == 0 || (ano % 4 == 0 && ano % 400 != 0))
#958790 Se Ano E Bisexto
Posted by fiote on 24/02/2009, 21:03 in Javascript / DOM / AJAX / ECMAScript
O que deveria estar acontecendo, e o que aconteceu?
#958419 Duvidas Em Javascript E Ajax
Posted by fiote on 19/02/2009, 15:44 in Javascript / DOM / AJAX / ECMAScript
<input type="radio" name='radiodominio id = '3' class='meuRadio'/>www.alguma coisa.com.br <input type="radio" name='radiodominio id = '4' class='meuRadio'/>www.dacarrinnaomah.com <input type="radio" name='radiodominio id = '5' class='meuRadio'/> www.oxente.com.br
2) ao invés de setar o event (change) pro elemento, agora vc seta pra classe inteira
$$('.meuRadio').change( function() { $.post( '/central/Produto/pegarDadosDominio/'+this.val(), '', function(data) { alert($('#input[@name=radiodominio]')); $("#status").html(data); } ) }.bind(this));
#958421 Duvidas Em Javascript E Ajax
Posted by fiote on 19/02/2009, 16:04 in Javascript / DOM / AJAX / ECMAScript
Só pra saber, você está usando alguma biblioteca/framework? ou isso é javascript puro?
(eu só trabalho com o mootools e achei parecido lol)
#958542 Como Fazer ?
Posted by fiote on 20/02/2009, 12:54 in Javascript / DOM / AJAX / ECMAScript
Crie um div (divCaixa), que vai ser uma caixa com width fixo no lugar que você quer que os produtos se movimentem. Além disso ele não deve mostrar a barra de rolagem, se não perde a graça (mas pode se quiser).
Dentro desse div, crie um segundo div (divLista), esse div precisa ter um width suficientmente grande pra que todos so produtos estejam um do lado do outro ser dar quebra de linha. Além disso, ele precisa ser definido com position absolute.
Dentro da divLista você vai colocar os produtos realmente.
Agora vc deve criar duas imagens - como as setas do site que vc postou - para controlar o movimento da divLista. Essas setas devem ter um onMouseOver pra chamar a função que movimente a divLista.
a função pode ser algo como:
<script> function movimentaLista(direcao,velocidade) { var leftAtual = document.getElementById('divLista').style.left; var novoLeft = leftAtual + (direcao*velocidade); document.getElementById('divLista').style.left = novoLeft; } </script>
A imagem da direita chamaria movimentaLista(1,5) e a da esquerda chamaria movimentaLista(-1,5).
Lembrando que no caso esse 5 é a 'velocidade' que ela vai se movimentar.
Sua vez agora
#958215 Imagens Aleatórias E Seus Atributos
Posted by fiote on 18/02/2009, 08:23 in Javascript / DOM / AJAX / ECMAScript
- Fórum WMO
- → fiote's Content
- Privacy Policy
- Regras ·