The error "Init map is not a function" occurs when the Google Maps API is activated after the page is published on WordPress, but does not appear when the page is in

Utilizing the Google Maps API to generate a map where users can outline the perimeter. An error only appears when the page is live. It appears that the page attempts to load the map before receiving it from the API, resulting in an error.

I've attempted moving the API script further down within the DOM, even after the API call. I've also experimented with cancelling the callback function, but unfortunately, there have been no changes.

Answer №1

I managed to fix the issue by inserting this snippet of code just before the script ended

const mapScript = document.createElement('script');
mapScript.src = 'https://maps.googleapis.com/maps/api/js?key=MY_API_KEY&libraries=drawing,geometry,places&callback=initMap';
document.head.appendChild(mapScript);

Similar questions

If you have not found the answer to your question or you are interested in this topic, then look at other similar questions below or use the search

Tips for managing the number of items returned in a dataProvider using AS3

*Hey there! I'm looking to only display 100 items in a list component from a dataProvider, even if it contains more than 500 or even 1000 items. Specifically, I want the first 100 items with cameras on to be included, and then fill the rest to reach a ...

Obtain the Unprocessed Product Details with the Shopify-Buy Software Development Kit

I want to create an e-commerce web application using ES6, react, react-redux, and your js-buy-sdk API. When fetching products from Shopify and storing them in the store, I noticed that I only have limited data about a product such as: { attrs, shopClient, ...

Focus on the checkbox list items using the setfocus method

In my asp.net webform, I have a page that includes a checkboxlist with 7 different listitems. I am looking to set the focus on the first listitem. Previously, I have used the following setup on other pages, but it doesn't work for listitem since you ...

Error encountered: No geographic indices found for executing a geoNear operation with Mongoose

Initially, I had divided the schemas but later nested them inside my overall document. Despite adding indexes and removing coordinates from location, there seems to be an issue with the nested points. Upon running get Indexes, it shows that there is an i ...

Link to download an Excel spreadsheet

My server is capable of generating excel files dynamically, and I am utilizing AJAX to download these dynamic excel files. Upon successful completion in the callback function, I receive the data for the excel file. $.ajax({ url: exporting. ...

Error in Express: Request object is not defined

I'm facing an issue while trying to send data using XMLHttpRequest to a service built with ExpressJS. On the server side in index.js : app.post('/add',url.add); Implementing on the server side in url.js : exports.add = function(req, r ...

Updating SELECT options using CHECKBOX without the need to refresh the page

Here is a select element with various options: <select name="kategory" class="select-field"> <option disabled>ATRACTIONS <option value=""> <option value="Castles">Castles <option value="History">History </s ...

Attempting to incorporate a factory within a restricted function

Just starting out with AngularJS and I have a question. Can I use a factory code (logger) inside a private function like the example below? I'm still working on understanding angular concepts. Thanks for your help: (function () { 'use strict ...

Using the Proper 'this' Reference Without Repeating 'this' in Nested Functions

I am facing an issue in my class where I have multiple methods and properties. One of these methods contains a setTimeout() function as follows: function myClass() { this.some_property = "test"; this.PrintOnTimeout = function() { // I thou ...

Techniques for altering history like the photo viewer on Facebook

On my website, I have a popup modal that functions similar to facebook's photo viewer. The issue is that when the modal is open, it displays content from another page, and I want to update the address bar value and history to reflect this change. Ins ...

Trigger an event when the menu is outside the viewport and then lock the menu to the top of the viewport

I am trying to create a menu element that remains fixed at the top of the browser viewport as the user scrolls, ensuring it is always visible. In my webpage layout, the menu sits below some text in the header initially. Once the user scrolls past the heade ...

Rebuilding Javascript Files in Your Project with Laravel 9

I recently set up a Laravel 9 project on my Mac and am looking to incorporate Vue components. The default Laravel installation includes a Vue component (js/Components/ExampleComponenets.vue) which I successfully displayed in a view file. Wanting to custom ...

A guide to implementing div wrapping in HTML

I'm in the process of using flexbox on my website. I have 10 div elements that I want to wrap around each other closely without any gaps between them. My goal is to have "4" positioned to the right of "1", instead of creating a new row and moving dow ...

One easy method to verify a visitor's Facebook login status

Currently, I am in the process of developing a WordPress plugin and looking for an easy way to determine if a page visitor is logged in with Facebook. Upon attempting to use the JavaScript SDK, I encountered the following error: The given URL is not all ...

Launching the file explorer when the icon is clicked

I am currently working with Angular 5 using Typescript. I need assistance in opening the file explorer window to add an attachment when clicking on an icon. I have successfully done this for a button, but I am facing issues with the click event binding on ...

Adding the object's key to an array in JavaScript: A step-by-step guide

Among the objects in my possession are: robot { id skill currentWorkPlace } warehouse { aiStaff currentStatus boxes } I am tasked with creating a function that will add the id of a new worker to the aiStaff array and assign a reference to the ...

Using PHP functions in an AJAX request

I am currently attempting to execute a php loop upon clicking a radio button. I understand that ajax is necessary for this task, but as a beginner in ajax, I am struggling to achieve the desired result. Presently, I am unable to click the radio button at a ...

restore the HTML element to its initial position after being moved

I am utilizing document.getElementById('Droping1').style['-webkit-transform'] = translate(0px,'+Ground+'px)'; in order to relocate an HTML element. How can I return it to its original position for reusability without t ...

Create an HTML and CSS code that allows you to split paragraph text into columns within a

I am seeking a way to create dynamic paragraph column text using only the https://i.sstatic.net/ZX1AN.png Here is an example of how it could be displayed in HTML: <div> <p> Sed ut perspiciatis, unde omnis iste natus error sit voluptatem ...

Ways to provide input parameters to a method upon clicking an element without using the HTML onclick attribute

Is there a way to pass data between pages without redirecting to the next.php page every time a button is clicked? One suggestion is to remove the onclick attribute from the button: <button class="submit-btn"></button> and use this jQuery fu ...