C ConnyFox Medlem sedan aug. 2001 1 087 inlägg Frågan 6 jan. 2003 23:11 #1 Hur gör jag så att när jag klickar på en länk så kommer det upp ett lager med t.ex en form eller vad som helst i brevid länken? saken är den att jag ska ha många sådana länkar på olika ställen av sidan så jag tänkte att man kanske kunnde få lagret att komma upp brevid muspekaren eller något.
tack på förhand!
P Peter S Medlem sedan dec. 2002 5 483 inlägg Så här kanske du skulle kunna göra:
<script type="text/javascript">
<!--
function showHide(e, c){
var elm = document.getElementById(e);
var oLft = c.offsetLeft;
var oTp = c.offsetTop;
elm.style.left = oLft + c.offsetWidth + "px";
elm.style.top = oTp + "px";
elm.style.visibility = (elm.style.visibility=="hidden")?"visible":"hidden";
};
//-->
</script>
<body>
<a href="javascript:void(0)" onclick="showHide('lager', this)">Foo</a>
<div id="lager" style="visibility:hidden; width:200px; background:#eef; position:absolute">content</div>
</body>
:)
C ConnyFox Medlem sedan aug. 2001 1 087 inlägg Det funkar på det viset att ett lager visas och tas bort men det kommer inte vid muspekaren som jag ville ha det utan där man lägger skälva div-taggen. jag vill ha lagret flytandes över allt annat där man klickar på länken. någon som vet hur man löser?
P Peter S Medlem sedan dec. 2002 5 483 inlägg Nu då:
<script type="text/javascript">
<!--
function showHide(i, e){
var oLeft = e.clientX;
var oTop = e.clientY;
var elm = document.getElementById(i);
elm.style.left = oLeft + "px";
elm.style.top = oTop + "px";
elm.style.visibility = (elm.style.visibility=="hidden")?"visible":"hidden";
};
//-->
</script>
<body>
<a href="javascript:void(0)" onclick="showHide('lager', event)">Foo</a>
<div id="lager" style="visibility:hidden; width:200px; background:#eef; position:absolute">content</div>
</body>
:)
C ConnyFox Medlem sedan aug. 2001 1 087 inlägg hmm nu e d lite mer rätt hehe nu hamnar det flytandes över allt annat som det skall men inte änns i närheten av där jag klickar :D
P Peter S Medlem sedan dec. 2002 5 483 inlägg Vilken webbläsare använder du?
:)
C ConnyFox Medlem sedan aug. 2001 1 087 inlägg men d e samma resultat i vanliga ie 6.0
P Peter S Medlem sedan dec. 2002 5 483 inlägg För mig fungerar det fint i IE6. Kan du visa den kod du använder?
:)
C ConnyFox Medlem sedan aug. 2001 1 087 inlägg Ok detta likker i head
<SCRIPT LANGUAGE="JavaScript" SRC="HideShow.js"></SCRIPT>
<script type="text/javascript">
<!--
function showHide(i, e){
var oLeft = e.clientX;
var oTop = e.clientY;
var elm = document.getElementById(i);
elm.style.left = oLeft + "px";
elm.style.top = oTop + "px";
elm.style.visibility = (elm.style.visibility=="hidden")?"visible":"hidden";
};
//-->
</script>
och detta ligger långt ner på sidan
<div id="lager" style="visibility:hidden; width:200px; background:#eef; position:absolute">content</div>
<a href="javascript:void(0)" onclick="showHide('lager', event)"><img src="bilder/utrop.gif" border="0"></a>
C ConnyFox Medlem sedan aug. 2001 1 087 inlägg Ingen aning om varför det funkar för både dig och min polare men för mig funkar d inte alls som tänkt, diven hamnar långt upp på sidan istället för brevid bildlänken =/
C ConnyFox Medlem sedan aug. 2001 1 087 inlägg Hmm det funkar när jag lägger det på en sida separat men inte i min andra kod då ballar det ur..
P Peter S Medlem sedan dec. 2002 5 483 inlägg Nu skall det fungera:
var oLeft = e.clientX + document.body.scrollLeft;
var oTop = e.clientY + document.body.scrollTop;
Jag tror dock inte att detta fungerar i IE5. Isåfall skulle du behöva modifiera koden lite grann.
:)
C ConnyFox Medlem sedan aug. 2001 1 087 inlägg Ja sanna mina ord det gjorde den oxå :D man tackar man tackar! finemang *bugar*