{"id":1397,"date":"2022-08-30T15:16:11","date_gmt":"2022-08-30T15:16:11","guid":{"rendered":"https:\/\/unknownerror.org\/index.php\/2013\/11\/15\/getting-a-strange-error-when-trying-to-create-infowindows-in-google-maps-v3-collection-of-common-programming-errors\/"},"modified":"2022-08-30T15:16:11","modified_gmt":"2022-08-30T15:16:11","slug":"getting-a-strange-error-when-trying-to-create-infowindows-in-google-maps-v3-collection-of-common-programming-errors","status":"publish","type":"post","link":"https:\/\/unknownerror.org\/index.php\/2022\/08\/30\/getting-a-strange-error-when-trying-to-create-infowindows-in-google-maps-v3-collection-of-common-programming-errors\/","title":{"rendered":"Getting a strange error when trying to create InfoWindows in Google Maps V3-Collection of common programming errors"},"content":{"rendered":"<p>I am getting the error &#8220;Uncaught TypeError: Object # has no method &#8216;L'&#8221; whenever I interact with either a marker or polyline in my map that has an InfoWindow that is supposed to open on click event. The marker InfoWindow opens with the error and I cannot close it, and the InfoWindow will not open at all for my polylines. Here is the code:<\/p>\n<pre><code>function downloadUrl(url,callback) {\n    var request = window.ActiveXObject ?\n        new ActiveXObject('Microsoft.XMLHTTP') :\n        new XMLHttpRequest;\n    request.onreadystatechange = function() {\n        if (request.readyState == 4) {\n            request.onreadystatechange = doNothing;\n            callback(request, request.status);\n        }\n    };\n    request.open('GET', url, true);\n    request.send(null);\n}\n\nfunction doNothing() {}\n\nfunction decodeLevels(encodedLevelsString) {\n    var decodedLevels = [];\n\n    for (var i = 0; i &lt; encodedLevelsString.length; ++i) {\n            var level = encodedLevelsString.charCodeAt(i) - 63;\n            decodedLevels.push(level);\n    }\n        return decodedLevels;\n}\n\nfunction createPolyLine(span_id, desc, encoded_span, plevels, pcolor, pweight, popacity) {\n    var decodedPath = google.maps.geometry.encoding.decodePath(encoded_span);\n    var decodedLevels = decodeLevels(plevels);\n\n    var polyline = new google.maps.Polyline({\n            path: decodedPath,\n            levels: decodedLevels,\n            strokeColor: pcolor,\n            strokeOpacity: popacity,\n            strokeWeight: pweight,\n    });\n\n    \/\/ Custom polyline events\n    \/\/--------------------------------------------------------\n    var html = \"[\" + span_id + \"] \" + desc;\n\n    google.maps.event.addListener(polyline, 'click', function(event) {\n        var infowindow = new google.maps.InfoWindow({\n                content: \"infowindow text content\"});\n        infowindow.position = event.latLng;\n        infowindow.open(map);\n    });\n\n    \/\/--------------------------------------------------------\n\n    return polyline;\n}\n\nfunction createMarker(point, name, address, clli, type, site_id, site_name) {\n    var html = \"<\/code><\/pre>\n<h3><code>\" + name + \"<\/code><\/h3>\n<pre>\" + \"<br \/>\" + address + \"<br \/>\" + clli + \"<br \/>View POP\";\n    var marker = new google.maps.Marker({\n        position: point,\n        \/\/map: map,\n    });\n\n\n    \/\/ Custom marker events\n    \/\/--------------------------------------------------------\n        google.maps.event.addListener(marker, 'click', function() {\n            var infowindow = new google.maps.InfoWindow({\n              content: html\n            });\n        infowindow.open(map,marker);\n        });\n    \/\/--------------------------------------------------------\n\n    return marker;\n}\n\nfunction initialize()\n{\n    var infowindow;\n    var latlng = new google.maps.LatLng(44.247904,-90.46225);\n    var opt =\n    { \n        center:latlng,\n        scrollwheel: false,\n        zoom:8,\n        mapTypeId: google.maps.MapTypeId.ROADMAP,\n        disableAutoPan:false,\n        navigationControl:true,\n        navigationControlOptions: {style:google.maps.NavigationControlStyle.ZOOM_PAN },\n        mapTypeControl:true,\n        mapTypeControlOptions: {style:google.maps.MapTypeControlStyle.DROPDOWN_MENU}\n    };\n\n    downloadUrl(\"gen_span_xml_v3.php\", function(data) {\n        var xml = data.responseXML;\n        var spans = xml.documentElement.getElementsByTagName(\"span\");\n        for (var i = 0; i &lt; spans.length; i++) {\n            var span_id = spans[i].getAttribute(\"id\");\n            var desc = spans[i].getAttribute(\"desc\");\n            var encoded_span = spans[i].getAttribute(\"encoded\");\n            var levels = spans[i].getAttribute(\"levels\");\n            var encodedPolyline = createPolyLine(span_id, desc, encoded_span, levels, '#0055ff', '4', '.5')\n            encodedPolyline.setMap(map);\n        }\n    });\n\n    downloadUrl(\"gen_marker_xml.php\", function(data) {\n        var xml = data.responseXML;\n        var markers = xml.documentElement.getElementsByTagName(\"marker\");\n        for (var i = 0; i &lt; markers.length; i++) {\n            var name = markers[i].getAttribute(\"name\");\n            var address = markers[i].getAttribute(\"address\");\n            var clli = markers[i].getAttribute(\"clli\");\n            var type = markers[i].getAttribute(\"type\");\n            var site_id = markers[i].getAttribute(\"site_id\");\n            var site_name = markers[i].getAttribute(\"site_name\");\n            var point = new google.maps.LatLng(\n                parseFloat(markers[i].getAttribute(\"lat\")),\n                parseFloat(markers[i].getAttribute(\"lng\")));\n            var new_marker = createMarker(point, name, address, clli, type, site_id, site_name);\n            new_marker.setMap(map);\n          }\n    });\n\n    var map = new google.maps.Map(document.getElementById(\"map\"),opt);\n}\n<\/pre>\n<p id=\"rop\"><small>Originally posted 2013-11-15 09:08:58. <\/small><\/p>","protected":false},"excerpt":{"rendered":"<p>I am getting the error &#8220;Uncaught TypeError: Object # has no method &#8216;L&#8217;&#8221; whenever I interact with either a marker or polyline in my map that has an InfoWindow that is supposed to open on click event. The marker InfoWindow opens with the error and I cannot close it, and the InfoWindow will not open [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-1397","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"_links":{"self":[{"href":"https:\/\/unknownerror.org\/index.php\/wp-json\/wp\/v2\/posts\/1397","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/unknownerror.org\/index.php\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/unknownerror.org\/index.php\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/unknownerror.org\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/unknownerror.org\/index.php\/wp-json\/wp\/v2\/comments?post=1397"}],"version-history":[{"count":0,"href":"https:\/\/unknownerror.org\/index.php\/wp-json\/wp\/v2\/posts\/1397\/revisions"}],"wp:attachment":[{"href":"https:\/\/unknownerror.org\/index.php\/wp-json\/wp\/v2\/media?parent=1397"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/unknownerror.org\/index.php\/wp-json\/wp\/v2\/categories?post=1397"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/unknownerror.org\/index.php\/wp-json\/wp\/v2\/tags?post=1397"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}