[javascript] menu dynamic uitbreiden

Pagina: 1
Acties:

  • stean
  • Registratie: November 2000
  • Laatst online: 18-08 22:30
ik heb een form en daarin wordt tevens een rechtermuisklikmenu in geladen.

nu is het echter zo dat als je op een mapje klikt het rechtermuismenuutje 2 opties heeft. klik je op een file dan moet het menuutje 3 opties hebben.
echter mijn html is dan al geschreven natuurlijk.

hoe kan ik mijn code bij de bestaande html code invoegen.Als je op een file of map klikt leest die uit waar je op hebt geklikt. en roept dan reloadmenu() aan.
deze code maakt nu een nieuwe html file aan ipv er bij te zetten. hoe doe ik dat?

in id2target staat dan --->of "map" of "file" afhankelijk van waar je klikt.
dnd = de naam van het form.

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<script language="JavaScript">
    function reloadmenu() {
        if (document.dnd.id2target.value == 'map')
        { 
        alert("This is map action") 
        }
        else
        {
        document.write("<div class='menuitems' id='migrateAction' onclick='javascript:self.dnd.mir.value=1;top.leftFrame.mig.location.href='migrateoverview.cfm';' url='javascript:dnd.submit();'>[img]'<cfoutput>#updatepath#</cfoutput>images/icons/sort.gif'[/img]&nbsp;Copy to clipboard</div>");
    
        //alert("This is a file action");
        }
    }
    </script>


Hoop dat mijn bedoeling duidelijk is

  • arnem_
  • Registratie: Mei 2000
  • Laatst online: 01-09 09:55
Je moet dan de functie "insertAdjacentHTML" hebben. Ik werk met verschillende buttons en heb het volgende script.

code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<script language="JavaScript">
<!-- 

counter = 0;
function count(item) {

if(counter > 0) {
    l.innerHTML = "";
    l.outerHTML = ""; 
    counter = 0;
}
if(counter < 1){
counter++;
var stukje1 = "<DIV ID='l'><TABLE BORDER='0' CELLPADDING='0' cellspacing='4'><TR>"
var stukje2 = "</TD></a></TR></TABLE></DIV>"
var place=document.getElementById("k");
place.insertAdjacentHTML('AfterBegin',stukje1 + item + stukje2);
return true;
}}
</script>


In the body geef je dan ergens aan waar de code moet worden ingevoegd. Dat gaat met het meegeven van een ID, idg "k".

bijv:
code:
1
<TD ID="k">etc.......   </TD>


En één van de buttons krijgt dit mee:
code:
1
OnClick="count('<a href=vakantie/vakantie1.php target=main><TD class=effect1> Zomer1</TD></a><a href=vakantie/vakantie2.php target=main><TD class=effect1>Zomer 2')";>


Als je het hele script wilt zien, moet je even hier kijken. De site is nog niet af maar misschien helpt het een beetje.

  • whoami
  • Registratie: December 2000
  • Laatst online: 23:04
Lees eerst eens de FAQ voor je wat post.

JAVASCRIPT HOORT THUIS IN W&G

Move P&W -> W&G

https://fgheysels.github.io/


  • stean
  • Registratie: November 2000
  • Laatst online: 18-08 22:30
sorry hoor moderator....... maar even rustig melden ipv hoodletters...
maar goed zal er de volgende keer aan denken.

  • stean
  • Registratie: November 2000
  • Laatst online: 18-08 22:30
Als die het menu eenmaal geplaatst is, kan ik dan ook weer een functie aanroepen om de tekst tussen mijn <div id="k"></div> weer weg te halen???
dit is nodig als die eerst op een file klikt en dan daarna weer op een map?
kon geen juiste functie vinden namelijk.
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
    <script language="JavaScript">
    function reloadmenu() {
        if (document.dnd.id2target.value == 'section')
        { 
        alert("This is a section no clipboard action")  
        var stukje="";
        var place=document.getElementById("k");
        place.insertAdjacentHTML('AfterBegin',stukje);
        }
        else
        {
            if ( onetime != 1)      
            {   var stukje = "<div class='menuitems' id='migrateAction' onclick='javascript:self.dnd.mir.value=1;' url='javascript:dnd.submit();'>
[img]'<cfoutput>#updatepath#</cfoutput>images/icons/sort.gif'[/img]
&nbsp;Copy to clipboard</div>"; 
                var place=document.getElementById("k");
                place.insertAdjacentHTML('AfterBegin',stukje);
                var stukje="";
                var onetime=1;
            }
        }
    }
    </script>


iemand?