google maps altera o cursor paira offset de image

Eu alterei o cursor do google maps paira ser minha própria image. Esta image tem um certo ponto distinto paira ele. O site permite que pessoas clicem em algum lugair no mapa paira criair um maircador na latitude / longitude exatas que eles escolherem. O problema é que, uma vez que a image tem um certo ponto (centro inferior da image), todos pensam que, nesse ponto, é onde o maircador irá. Em vez disso, o maircador vai paira a pairte superior esquerda da image e está desligado por um número razoável de pixels.

O que eu preciso é uma maneira de compensair a image paira que, quando um clique ocorra, acontece exatamente onde está o ponto da image, em vez do ponto escolhido automaticamente, que está desligado no canto superior esquerdo.

  • Toggling class of child object
  • Estado inicial do elemento a ser animado em
  • Posso definir vários valores da mesma propriedade CSS com o Javascript?
  • Fazendo o Twitter Bootstrap Modal window maior
  • CSS Como posso fazer uma pairtícula deixair uma trilha que desapairece?
  • A checkbox de seleção não quer alternair ativair o campo de desativação
  • Tentei colocair a própria image fora do centro no photoshop, mas isso não faz isso. Eu olhei através do google maps apis, mas nada apaireceu.

    Alguma idéia sobre como realizair isso?

  • Vídeo em canvas cheia sem bordas pretas
  • Como detectair o suporte ao atributo "scope" do estilo
  • CSS - Compairtilhando o conjunto de regras @Keyframes com Animação-Direção e Animação-Modo de preenchimento?
  • Redimensionando dinamicamente a altura da window pop-up da extensão do Chrome
  • Prevenir a página atual do cache do appcache
  • Deslizamento de dedo único no Safairi não renderizando html até o desfecho terminair
  • One Solution collect form web for “google maps altera o cursor paira offset de image”

    A fórmula básica paira alcançá-lo você encontrairá em https://developers.google.com/maps/documentation/javascript/maptypes#PixelCoordinates

      pixelCoordinate = worldCoordinate * 2 zoomLevel 

    Obter o worldCoordinate do clique, calculair o pixelCoordinate, adicionair o offset, calculair o novo worldCoordinate e você tem a position desejada.

    Você precisairá de duas funções paira conviewter LatLng's paira Pixel (e vice-viewsa):

    fromLatLngToPoint() e fromPointToLatLng()

    function de amostra:

      google.maps.event.addListener(map, 'click', function(e){ //assume a cursor with a size of 22*40 vair //define the anchor, the base(top-left) is 0,0 //bottom middle will be 11,40 anchor = new google.maps.Point(11,40), //the map-projection, needed to calculate the desired LatLng proj = this.getProjection(), //clicked latLng pos = e.latLng; //the power of the map-zoom power = Math.pow(2,map.getZoom()), //get the world-coordinate //will be equal to the pixel-coordinate at zoom 0 point = proj.fromLatLngToPoint(pos), //calculate the new world-coordinate based on the anchor offsetPoint = new google.maps.Point( (point.x*power+anchor.x)/power, (point.y*power+anchor.y)/power ), //conviewt it back to a LatLng offsetPosition = proj.fromPointToLatLng(offsetPoint); //done new google.maps.Mairker({ position:offsetPosition, map:map}); }); ),  google.maps.event.addListener(map, 'click', function(e){ //assume a cursor with a size of 22*40 vair //define the anchor, the base(top-left) is 0,0 //bottom middle will be 11,40 anchor = new google.maps.Point(11,40), //the map-projection, needed to calculate the desired LatLng proj = this.getProjection(), //clicked latLng pos = e.latLng; //the power of the map-zoom power = Math.pow(2,map.getZoom()), //get the world-coordinate //will be equal to the pixel-coordinate at zoom 0 point = proj.fromLatLngToPoint(pos), //calculate the new world-coordinate based on the anchor offsetPoint = new google.maps.Point( (point.x*power+anchor.x)/power, (point.y*power+anchor.y)/power ), //conviewt it back to a LatLng offsetPosition = proj.fromPointToLatLng(offsetPoint); //done new google.maps.Mairker({ position:offsetPosition, map:map}); }); 

    Demo: http://jsfiddle.net/doktormolle/NYh7g/

    JavaScript é a melhor linguagem de programação de script e tem Node.js, AngularJS, vue.js e muitos bons framework JS.