Zeigen Kontext-Menü-Taste (marker)

Ich habe diesen code für Kontextmenü und es funktioniert Prima

google.maps.event.addListener(map, 'rightclick', function(e)
{
    //start buy hiding the context menu if its open
    contextMenu.hide();

    var mapDiv = $(map.getDiv()),
        x = e.pixel.x,
        y = e.pixel.y;

    //save the clicked location
    clickedLatLng = e.latLng;

    //adjust if clicked to close to the edge of the map
    if ( x > mapDiv.width() - contextMenu.width() )
        x -= contextMenu.width();

    if ( y > mapDiv.height() - contextMenu.height() )
        y -= contextMenu.height();

    //Set the location and fade in the context menu
    contextMenu.css({ top: y, left: x }).fadeIn(100);
});

Meine Frage ist, warum dies nicht funktioniert, nicht die gleiche Sache, aber klicken Sie auf ist jetzt startMarker *klicken Sie auf*?

google.maps.event.addListener(startMarker, 'click', function(e) {
            //start buy hiding the context menu if its open
            contextMenu.hide();

            var mapDiv = $(map.getDiv()),
                x = e.pixel.x,
                y = e.pixel.y;

            //save the clicked location
            clickedLatLng = e.latLng;

            //adjust if clicked to close to the edge of the map
            if ( x > mapDiv.width() - contextMenu.width() )
                x -= contextMenu.width();

            if ( y > mapDiv.height() - contextMenu.height() )
                y -= contextMenu.height();

            //Set the location and fade in the context menu
            contextMenu.css({ top: y, left: x }).fadeIn(100);
          });

Und der rest des Codes

//Create the context menu element
var contextMenu = $(document.createElement('ul')).attr('id', 'contextMenu');

//Fill our context menu with links
contextMenu.append(
    '<li><a href=\"#startMenu\">Start</a></li>' +
    '<li><a href=\"#stopMenu\">End</a></li>'
);

//Disable the browser context menu on our context menu
contextMenu.bind('contextmenu', function() { return false; });

//Append it to the map object
$(map.getDiv()).append(contextMenu);


//Set some events on the context menu links
contextMenu.find('a').click( function()
{
    //fade out the menu
    contextMenu.fadeOut(75);

    //The link's href minus the #
    var action = $(this).attr('href').substr(1);

    switch (action) {
        case 'startMenu':
            $.get('something1.php', method1);
            break;

        case 'stopMenu':
            $.get('something2.php', method2);   
            break;
    }

    return false;
});

InformationsquelleAutor svenkapudija | 2011-02-28

Schreibe einen Kommentar