Hello ! J’ai une question à propos des menus Contextuels.
J’explique j’ai déjà mis en place le menu etc. (il marche) ... et crée mes fonctions.

Mon problème est que quand lorsque je vais cliquer sur l'une de mes rubrique, rien ne se passe.
Actuellement j’essaie d’appeler mes fonctions via un onclick mais ça ne fonctionne pas (Je sais c'est moche).

J’ai cherché sur l'internet mais je pense qu’il y a quelque chose qui m’échappe avec l’appel des fonctions (Je tien a précisé que mes fonction marche séparément) .
Je donne l’extrait de code. Hésite pas !


Mon HTML

Code HTML : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
 
 
<!-- Menu Contextuel -->         <div id="menuData" style="display: none;">
            <div id="m1" text="File">
 
                <div id="m11" onclick="cut()" style="cursor: pointer;" text="Cut" img="cut.gif" imgdis="cut_dis.gif" ><hotkey>Ctrl+X</hotkey></div>  
                <div id="ms1" type="separator"></div> 
                <div id="m12" onclick="copy()" style="cursor: pointer;" text="Copy"  img="copy.gif" imgdis="copy_dis.gif"><hotkey>Ctrl+C</hotkey> </div> 
                <div id="m13" onclick="paste()" style="cursor: pointer;" text="Paste" img="paste.gif" mgdis="paste_dis.gif"><hotkey>Ctrl+V</hotkey></div>
 
            </div>
        </div>
<!---------------->

Mon JS

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
 
//#region MENUX JavaScript
 
    var menu = new dhtmlXMenuObject();
    menu.setIconsPath("./Scripts/codebase/imgs/");
    menu.renderAsContextMenu();
    //menu.loadStruct("./Scripts/codebase/dhxmenu.xml?e=" + new Date().getTime());
    menu.loadFromHTML("menuData", true);
    var event_id, cb_date, cb_isCopy, cb_section = null;
 
    scheduler.attachEvent("onContextMenu", function (event_id_loc, native_event_object) {
        event_id = event_id_loc;
        cb_date = scheduler.getActionData(native_event_object).date;
        cb_section = scheduler.getActionData(native_event_object).section;
 
        /* Menu position */
        var posx = 0;
        var posy = 0;
        if (native_event_object.pageX || native_event_object.pageY) {
            posx = native_event_object.pageX;
            posy = native_event_object.pageY;
        } else if (native_event_object.clientX || native_event_object.clientY) {
            posx = native_event_object.clientX + document.body.scrollLeft + document.documentElement.scrollLeft;
            posy = native_event_object.clientY + document.body.scrollTop + document.documentElement.scrollTop;
        }
 
        //#region function Menu contextuel
        function copy2() { alert("koko"); }
 
        function copy() {
            scheduler._buffer_id = event_id;
            cb_isCopy = true;
            scheduler.callEvent("onEventCopied", [scheduler.getEvent(event_id)]);
        }
 
        function cut() {
            scheduler._buffer_id = event_id;
            cb_isCopy = false;
            scheduler.callEvent("onEventCut", [scheduler.getEvent(event_id)]);
        }
 
        function paste() {
            var ev = scheduler.getEvent(scheduler._buffer_id);
            if (ev) {
                if (cb_isCopy) { // copy-paste
                    new_ev = _cb_make_paste_event(ev);
                    new_ev.id = scheduler.uid();
 
                    scheduler.addEvent(new_ev);
                    scheduler.callEvent("onEventPasted", [cb_isCopy, new_ev, ev]);
                } else { // cut-paste
                    new_ev = _cb_make_paste_event(ev);
 
                    var a = scheduler.callEvent("onBeforeEventChanged", [new_ev, null, !1, ev]);
                    a && (scheduler.addEvent(new_ev), scheduler.callEvent("onEventPasted", [cb_isCopy, new_ev, ev]));
                }
            }
        }
 
        function _cb_make_paste_event(ev) {
            var event_duration = ev.end_date - ev.start_date;
            var new_ev = scheduler._lame_copy({}, ev);
            new_ev.start_date = new Date(cb_date);
            new_ev.end_date = new Date(new_ev.start_date.valueOf() + event_duration);
 
            if (cb_section) {
                var a = scheduler.getState().mode, d = null;
                scheduler.matrix[a] ? d = scheduler.matrix[a].y_property : scheduler._props[a] && (d = scheduler._props[a].property), new_ev[d] = cb_section;
            }
            return new_ev;
        }
        //#endregion 
 
        /* Menu items */
        if (event_id) {
            menu.showItem("m11");
            menu.showItem("ms1");
            menu.showItem("m12");
            menu.showItem("demo");
            menu.hideItem("m13");
            menu.hideItem("ms2");
            menu.showContextMenu(posx, posy);
        }
        else {
            menu.hideItem("m11");
            menu.hideItem("m12");
            menu.showItem("m13");
            menu.showItem("demo");
            menu.hideItem("ms1");
            menu.hideItem("ms2");
            menu.showContextMenu(posx, posy);
        }
 
        return false; // Désactive le menu de base    });
 
    //#endregion
J'ai oublié de précisé, que j'utilise la bibliothèque DHTMLX Je gère des évents que je voudrais copié collé avec mon nouveau menu !