Abrir link em outra DIV

3,435 views
Skip to first unread message

Elaine Martins

unread,
Oct 25, 2009, 8:18:47 PM10/25/09
to list...@googlegroups.com
Oi Pessoal, tudo bem?

Eu sou novata com PHP e HTML ainda, mas gostaria de saber o seguinte.

Eu tenho uma página com três div (três colunas).
Tem como, ao clicar em um link que está na coluna da esquerda, por exemplo, o conteúdo ser exibido na DIV do meio?

Agradeço desde já a paciência e a atenção.

Abraços

--
Elaine Martins

--
http://www.elainems.com.br
http://martinselaine.multiply.com
http://www.nevoeiro.org

Marcel Araujo

unread,
Oct 25, 2009, 8:35:20 PM10/25/09
to list...@googlegroups.com
Isto pode ser feito de diversas maneiras através de Javascript com ou sem Ajax! Tudo depende das tuas necessidades.

Por exemplo, com jQuery: http://tinyurl.com/yl5kyd7
                            http://tinyurl.com/6ce63d

2009/10/25 Elaine Martins <elaine....@gmail.com>



--
Abraços......

Marcel Araujo
System Analyst
Developer Java/PHP/RIA
Linux User #490101

Daniel Maffioletti

unread,
Oct 25, 2009, 8:40:42 PM10/25/09
to list...@googlegroups.com
Através do AJAX você consegue fazer isso. Conhece o JQuery? JQuery é uma biblioteca javascript que disponibiliza vários recursos facilitando nossa vida.
então seria algo assim...

no head do arquivo você põe o código javascript abaixo
você precisa pegar o arquivo jquery no site:
http://code.google.com/p/jqueryjs/downloads/detail?name=jquery-1.3.1.min.js

Esse código abaixo deve funcionar, não testei... é uma forma simples, mais existem outras alternativas para você.

// inclui o a biblioteca jquery no documento.
<script src="http://code.google.com/p/jqueryjs/downloads/detail?name=jquery-1.3.1.min.js" type="txt/javascript"></script>

<script type="text/javascript">
function carrega( pagina ){
      //carrega os dados de: pagina_conteudo.php na div id="conteudo"
      $(#conteudo).load(pagina);
})
</script>

<div id="esquerda">
<a href="javascript:carrega('noticia.php')">Notícia</a>
<a href="javascript:carrega('fotos.php?fotos_img=diversas')">Fotos</a>
<a href="javascript:carrega('pagina/equipe.html')">Equipe</a>
etc...
</div>

<div id="conteudo">
</div>

<div id="direita">
</div>

DICA PARA O ARQUIVO PHP QUE RECEBE UM PARÂMETRO:
Vocẽ pode enviar parâmetros via URL / GET --

<?php
$acao = $_POST['fotos_img'];
echo $acao;
?>



Daniel Maffioletti
(61) 9151-4622 / 3459-8304
www.d2mm.com.br
Brasília-DF

Elaine Martins

unread,
Oct 25, 2009, 9:43:04 PM10/25/09
to list...@googlegroups.com
Hum, valeu pela ajuda, mas aqui não está dando muito certo não.. :(

2009/10/25 Daniel Maffioletti <dmaffi...@gmail.com>

José Cláudio Medeiros de Lima

unread,
Oct 25, 2009, 9:52:40 PM10/25/09
to list...@googlegroups.com

Danilo Bomfim

unread,
Oct 25, 2009, 8:26:29 PM10/25/09
to list...@googlegroups.com
Olá Elaine, boa noite!

Eu faço isso da seguinte forma:
Primeiro, insira o código abaixo no HEAD da sua página.

<script type="text/javascript">

try {xmlhttp = new XMLHttpRequest();} catch(ee) {
try{xmlhttp = new ActiveXObject("Msxml2.XMLHTTP");} catch(e) {
try{xmlhttp = new ActiveXObject("Microsoft.XMLHTTP");} catch(E)
{xmlhttp = false;}
}
}

function carrega(_idContainer, _endereco){
var tag_container = document.getElementById(_idContainer);
tag_container.innerHTML = '';

xmlhttp.open('GET',_endereco,true);
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4){

retorno = xmlhttp.responseText;
tag_container.innerHTML = retorno;

}
}
xmlhttp.send(null)
}

</script>

<a href="javascript:carrega('nomeDaDiv','urlDaPaginaAbrirNaDiv')">Link</a>

Espero ter ajudado!!

Boa noite,

--------------------------------------------
Danilo Bomfim
dan...@roxie.com.br
(19) 9833-2051

Danilo Bomfim

unread,
Oct 25, 2009, 8:42:19 PM10/25/09
to list...@googlegroups.com
humm... bem mais fácil com a sugestão do jQuery. Valeu Marcel, prá mim
também ajudou.
Próximos vão ser assim.


--------------------------------------------
Danilo Bomfim
dan...@roxie.com.br
(19) 9235-0418



2009/10/25 Daniel Maffioletti <dmaffi...@gmail.com>:

Marcel Araujo

unread,
Oct 26, 2009, 6:37:36 AM10/26/09
to list...@googlegroups.com
Com certeza, pois a jQuery já faz a criação do objeto AJAX sendo isto o mais chato, o resto é facílimo!!!

adicione antes da tua tag HEAD<script text='text/javascript'>
$(document).ready(function(){
$("#elemento").load("pagina.html");
});
</script>

e depois adicionas dentro da tua tag BODY
um elemento div

<div id='elemento'></div>

Ao testares a tua página após o carregamento deverá carregar o conteúdo do arquivo pagina.html dentro da tua div com ID chamado elemento!!

2009/10/25 Danilo Bomfim <danil...@gmail.com>

felipe moraes

unread,
Oct 26, 2009, 2:51:18 PM10/26/09
to list...@googlegroups.com
dá uma olhada em "javascript não obstrusivo"

Elaine Martins

unread,
Oct 26, 2009, 3:31:15 PM10/26/09
to list...@googlegroups.com
Opa, valeu pessoal pelas ajudas!
Estou no trabalho agora, mas quando chegar em casa vou testar as dicas que vocês deram! Qualquer coisa volto a "pentelhar" vocês. Muito obrigada mesmo!

2009/10/26 felipe moraes <feli...@gmail.com>

dá uma olhada em "javascript não obstrusivo"




Elaine Martins

unread,
Oct 26, 2009, 7:55:16 PM10/26/09
to list...@googlegroups.com
Aeeee, agora funcionou!

Muito obrigada pela ajuda de todos!

2009/10/25 Danilo Bomfim <danil...@gmail.com>

Marcel Araujo

unread,
Oct 30, 2009, 7:16:07 AM10/30/09
to list...@googlegroups.com
Só recomendo ter cuidado com a maneira e o que irás adicionar pois podes estar abrindo uma brecha de segurança sujeitando a inserirem qualquer coisa através do método load do jQuery!!!

2009/10/26 Elaine Martins <elaine....@gmail.com>
Reply all
Reply to author
Forward
0 new messages