Avatar billede tobby Nybegynder
21. juni 2002 - 11:26 Der er 16 kommentarer og
1 løsning

Pop-op menu

Jeg sidder og laver et administrationssystem til et intranet. Jeg har fået brygget en hiraki-menu sammen der indeholder alle dokumenterne.

Nu vil jeg gerne have en menu, der popper frem når man klikker på et dokument, således at man får flere valgmuligheder - f.eks. rediger dokument, opret nyt dokument, slet dokument, ryk op, ryk ned osv.

Jeg det kan lade sig gøre - men hvordan?
Avatar billede tobby Nybegynder
21. juni 2002 - 11:27 #1
Jeg det kan lade sig gøre - men hvordan?

=

Jeg VED det kan lade sig gøre - men hvordan?
Avatar billede uffelgaard Nybegynder
21. juni 2002 - 11:31 #2
Er ikke helt sikker på, at jeg ved hvad du mener...
sådan noget: http://www.dynamicdrive.com/dynamicindex1/popit.htm
Avatar billede tobby Nybegynder
21. juni 2002 - 11:33 #3
Kigger lige. Ser umiddelbart fornuftigt ud.
Avatar billede uffelgaard Nybegynder
21. juni 2002 - 11:37 #4
:-) svar
Avatar billede tobby Nybegynder
21. juni 2002 - 11:40 #5
Det virker sgu bare! - tak
Avatar billede uffelgaard Nybegynder
21. juni 2002 - 11:41 #6
Selv tak!
Avatar billede jakoba Nybegynder
21. juni 2002 - 11:43 #7
En selectboks der hvor laget popper op vil blive tegnet ovenover laget og se åndsvag ud.
Der kan være lignende problemer med iframes og rammer.
Så pas dog på med hvor du bruger det.
Avatar billede tobby Nybegynder
21. juni 2002 - 11:56 #8
Hmm - der var jeg vist lidt for hurtig - håber stadig du er der uffelgaard.
Problemet er at linkene aldrig er de samme - der er altid forskellige id's mm. - Kan jeg ved hjælp af a href-linjen gøre java-script delen dynamisk...? - ush der er svært at forklare, men prøv at kigge på nedenstående kode:

Javascript delen:

linkset[0]='<div class="menuitems"><a href="_edit.asp?Mode=New&ParentID=">Opret</a></div>'
linkset[0]+='<div class="menuitems"><a href="_edit.asp?Mode=Edit&ID=">Rediger</a></div>'
linkset[0]+='<div class="menuitems"><a href="http://javascriptkit.com">Slet</a></div>'
linkset[0]+='<div class="menuitems"><a href="http://freewarejava.com">Ryk op</a></div>'
linkset[0]+='<div class="menuitems"><a href="http://freewarejava.com">Ryk ned</a></div>'

"Link"-delen

<% do until Docs.EOF %>
  <tr>
    <td width="56">
    </td>
    <td>
      <a href="#" onMouseover="showmenu(event,linkset[0])" onMouseout="delayhidemenu()"><img SRC="images/doc.gif" WIDTH="12" HEIGHT="16"></a>
    </td>
    <td width="3">
    </td>
    <td>
      <a href="#" onMouseover="showmenu(event,linkset[0])" onMouseout="delayhidemenu()"><% = Docs("Titel") %></a>
    </td>
  </tr>
<%
Docs.MoveNext
Loop
%>
Avatar billede pelkjaer Nybegynder
21. juni 2002 - 12:03 #9
Det er i denne linje det drejer sig om:
<div class="menuitems"><a href="_edit.asp?Mode=Edit&ID=">Rediger</a></div>

Du skal bare sætte en repeatregion udenom.
Avatar billede jakoba Nybegynder
21. juni 2002 - 12:09 #10
Javascript delen:

function funktionDerReturnererDenOnskedeLinkListeIEnStreng( evt, parametre );
    var bygStreng = '<div class="menuitems"><a href="_edit.asp?Mode=New&ParentID=">Opret</a></div>';
    bygStreng += '<div class="menuitems"><a href="_edit.asp?Mode=Edit&ID=' +evt +'">Rediger i ' +evt +'</a></div>';
    bygStreng += '<div class="menuitems"><a href="http://javascriptkit.com">Slet</a></div>';
    bygStreng += '<div class="menuitems"><a href="http://freewarejava.com">Ryk op</a></div>';
    bygStreng += '<div class="menuitems"><a href="http://' +parametre +'.com">' +parametre +'Ryk ned</a></div>';
    return bygStreng:
}

linkset[0]= funktionDerReturnererDenOnskedeLinkListeIEnStreng( evt, parametre );

mvh JakobA
Avatar billede tobby Nybegynder
21. juni 2002 - 12:12 #11
Ja, den havde jeg selv set. Men er der ikke mulighed for at redigere denne linie:

<a href="#" onMouseover="showmenu(event,linkset[0])" onMouseout="delayhidemenu()"><img SRC="images/doc.gif" WIDTH="12" HEIGHT="16"></a>

- så den smider id'erne til

<div class="menuitems"><a href="_edit.asp?Mode=Edit&ID=">Rediger</a></div>

??
Avatar billede tobby Nybegynder
21. juni 2002 - 12:13 #12
jakoba > det var ikke til dig - kigger lige på dit indlæg...
Avatar billede pelkjaer Nybegynder
21. juni 2002 - 12:15 #13
Du hiver vel dit link ud fra en database, og derefter sætter du bare en repeatregion rundt om. Et eks. fra en af mine sider:

<%
While ((Repeat2__numRows <> 0) AND (NOT MainMenuTwo.EOF))
%>           
<div class="menuitems"><a href="sites.asp?MainMenuId=<%=(MainMenuTwo.Fields.Item("MainMenuId").Value)%>&SubMenuId=<%=(MainMenuTwo.Fields.Item("SubMenuId").Value)%>"><%=(MainMenuTwo.Fields.Item("SubMenuTitle").Value)%></a></div>
<%
Repeat2__index=Repeat2__index+1
Repeat2__numRows=Repeat2__numRows-1
MainMenuTwo.MoveNext()
Wend
%>
Avatar billede tobby Nybegynder
21. juni 2002 - 12:36 #14
Jakoba > hvad skal jeg skrive i < a href=""> linien for at kalde funktionen? (ja, ved det godt - er en spade til javascript)
Avatar billede jakoba Nybegynder
21. juni 2002 - 12:54 #15
<a href="#"
    onMouseover="showmenu( event, funktionDerReturnererDenOnskedeLinkListeIEnStreng( 'param1', 'param2' ) )"
    onMouseout="delayhidemenu()"
><img SRC="images/doc.gif" WIDTH="12" HEIGHT="16"></a>

hvad parametrene så skal være ved du bedst selv, og mon ikke også funktionen skal have et lidt bedre navn :-)

mvh JakobA
Avatar billede tobby Nybegynder
21. juni 2002 - 13:09 #16
bliver ved med at få fejlen "tegnet { var ventet".... :(
Avatar billede jakoba Nybegynder
21. juni 2002 - 13:48 #17
Ups. min fejl. jeg har skrevet ; istedet for { sidst i den linie der starter med  function. 
Det skal være:
function funktionDerReturnererDenOnskedeLinkListeIEnStreng( evt, parametre ) {
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester