Jump to content

Escrever código ao passar o rato num link [PROBLEMA RESOLVIDO]


SonicSpot
 Share

Recommended Posts

Boa tarde! Eu tenho o seguinte código:

<html>
<head>
	<meta http-equiv="Content-Language" content="pt">
	<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
	<title>menu</title>
	<script language="javascript">
		function showInfo(t){
			if(document.layers) {
				with(document.layers["caixaTexto"].document) {
					open();
					write(t);
					close();
				}
			}
			else {
				if(document.all) {
					caixaTexto.innerHTML = t;
				}
			}
		}
	</script>
</head>

<body topmargin="5" leftmargin="5" rightmargin="5" bottommargin="5">
	<a href="link1.html" onmouseover="showInfo('This is info number 1')" onmouseout="showInfo('')">Link 1</a>
	<br>
	<a href="link2.html" onmouseover="showInfo('This is the other info, number 2')" onmouseout="showInfo('')">Link 2</a>
	<br>
	<div id="caixaTexto" class="descricao"></div>
</body>
</html>

Quando se passa o rato por cima dos links, o código escreve na página texto/HTML. Infelizmente, este código não funciona em Firefox, e gostaria de saber porquê, ou como tornar o código compatível com a maioria dos browsers. Já agora, aviso que não fui eu que escrevi a função, e que não percebo de Javascript, por isso agradecia que ao ajudar, tentassem ser o mais explícitos possível.

Grato pela vossa atenção, Marco Oliveira.

Link to comment
Share on other sites

Já consegui resolver o problema! Já agora, no espírito de partilha, deixo aqui a solução. Nota: também adicionei a opção de poder escolher qual o div em que se quer escrever.

A solução é a seguinte:

<html>
<head>
	<meta http-equiv="Content-Language" content="pt">
	<meta http-equiv="Content-Type" content="text/html; charset=windows-1252">
	<title>menu</title>

	<script language="javascript">
		function showInfo(texto,target){
			document.getElementById(target).innerHTML = texto;
		}
	</script>

</head>

<body topmargin="5" leftmargin="5" rightmargin="5" bottommargin="5">
	<a href="link1.html" onmouseover="showInfo('This is info number 1','caixaTexto')" onmouseout="showInfo('','caixaTexto')">Link 1</a>
	<br>
	<a href="link2.html" onmouseover="showInfo('This is the other info, number 2','caixaTexto')" onmouseout="showInfo('','caixaTexto')">Link 2</a>
	<br>
	<div id="caixaTexto" class="descricao"></div>
</body>
</html>

Espero que isto vos seja útil!

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.