Toon posts:

[NS4]functie aanroepen vanuit absoluut gepositioneerde layer

Pagina: 1
Acties:

Verwijderd

Topicstarter
in onderstaande code staat in een div een table met daarin weer een hyperlink die een functie probeert aan te roepen.

Het probleem is dat het in IE4 en 5+, enz, enz wel werkt maar in NS4 NIET!

heeft te maken met dat de link in een absoluut gepositioneerde DIV staat.
zet ik de table in onderstaade code in een relatief gepositioneerde DIV , dan werkt het, maar dat wil ik niet.

dus probeer ik om de relatief gepositieneerde DIV(met daarin de table, en hyperlink) in een absoluut gepositioneerde DIV te zetten, dan werkt dat ook niet...

ik snap niet hoe ik nu een functie moet benaderen,

----------------
voorwaarde is dat alles in een absoluut gepositioneerde DIV moet staan, staat in de absolute DIV weer een relatief gepositioneerde DIV(met daarin weer de table + hyperlink) dan maakt dat weer niet uit 8)7 8)7
----------------

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<div id="menuDiv2" 
    style="position:absolute;visibility:hidden;"
    onMouseOver="clearTimeout(hideTimer)"
    onMouseOut="hideTimer=setTimeout('closeMenu()',500)"
>
<table onMouseOut="clearTimeout(hideTimer)">
    <tr>
    <td>
    <table bgcolor="cccccc" border="1" width="150" cellspacing="1" >
           <tr>
        <td><a href="javascript://" onMouseOver="openMenu

(this,'menuDiv3')" onMouseOut="hideTimer=setTimeout('closeMenu()',500)">menuutje 1</a>
                               </td>
           </tr>
    </table>
    </td>
    </tr>
</table>
</div>

  • Pelle
  • Registratie: Januari 2001
  • Laatst online: 11:08

Pelle

🚴‍♂️

De this-verwijzing naar het huidige object gaat niet werken in NS4.

Verwijderd

Topicstarter
doet het wel,.......... als ie niet in een relatief gepositioneerde DIV staat. :)

Verwijderd

Topicstarter
ehhh ik bedoel absoluut gepositioneerd,

--bob wordt een beetje gek van relatieve en absolute, ......standjes

Verwijderd

Hoe ziet je functie eruit? Aanroepen maakt niets uit waar ie zich ook bevindt.

Complete code? Of alleen relevante code laten zien graag.

Verwijderd

Topicstarter
dit is de functie die aangeroepen wordt...

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
function openMenu(obj,menu){
    clearTimeout(hideTimer);
    closeMenu();
    if(is.ie4) {
        document.all(menu).style.visibility = "visible";
        activeMenu=menu;
        var x = findPosX(obj);
        var y = findPosY(obj);
        x = x + 50;
        document.all(activeMenu).style.top = y;
        document.all(activeMenu).style.left = x;
    }
    if(is.ns4) {
        document.layers[menu].visibility = "show";
        activeMenu=menu;
        NS4mouseEvent(activeMenu);
        var x = findPosX(obj);
        var y = findPosY(obj);
        x = x + 50;
        document.layers[activeMenu].top = y;
        document.layers[activeMenu].left = x;
    }
    else {
        document.getElementById(menu).style.visibility = "visible";
        activeMenu = menu;
        var x = findPosX(obj);
        var y = findPosY(obj);
        x = x + 50;
        document.getElementById(activeMenu).style.top = y;
        document.getElementById(activeMenu).style.left = x;
    }
        CBeventHandler();
}

  • LuCarD
  • Registratie: Januari 2000
  • Niet online

LuCarD

Certified BUFH

Wat doet het wel? En wat werkt er niet?

Programmer - an organism that turns coffee into software.


Verwijderd

Topicstarter
nou bovenstaande functie maakt een andere layer visible, dat werkt zolang!, de layer waaruit de functie wordt aangeroepen, visible is of als hij relatief gepositioneerd is.

  • Bosmonster
  • Registratie: Juni 2001
  • Laatst online: 29-08 19:47

Bosmonster

*zucht*

PHP:
1
2
3
4
5
document.layers[menu].visibility = "show";
activeMenu=menu;
NS4mouseEvent(activeMenu);
var x = findPosX(obj);
var y = findPosY(obj);


Ten eerste: Ook NS4 gebruikt gewoon visible en hidden, ipv show en hide. Het enige verschil (bug) zit hem in dat je show en hide terugkrijgt ipv de juiste waarden.

Ten tweede: denk dat de fout zit in je findPosX/Y functies.. in NS4 kun je namelijk neit de coordinaten opvragen van een relatief geplaatst object. In dit geval je a-tag dus.
Pagina: 1