Setting the popup content
There are two ways to set the content for a popup.
Pass a string of content
If you pass a string of content then it's set in the overlay container div using innerHTML
.
You can pass a string of text, or a string of HTML. If you pass HTML then they'll get displayed as actual HTML elements.
The following are equivalent.
const popup = G.popup({
content: 'Test content'
});
const popup = G.popup('Test content');
const popup = G.popup({
content: '<p>Test content</p><p><button>Close</button><p>',
closeElement: 'button'
});
const popup = G.popup('<p>Test content</p><p><button>Close</button><p>');
popup.closeElement = 'button';
const content = `<p>Test content</p>
<p><button>Close</button></p>
`;
const popup = G.popup(content);
popup.closeElement = 'button';
Pass an HTMLElement, or Text object
Instead of passing a string of HTML, you can create the DOM elements and pass that as the content.
The following are equivalent.
const popupContent = document.createElement('div');
popupContent.appendChild(document.createElement('h1')).textContent = 'My Popup';
popupContent.appendChild(document.createElement('p')).textContent = 'Test content.';
popupContent.appendChild(document.createElement('button')).textContent = 'close';
const popup = G.popup({content: popupContent, closeElement: 'button'});
const popupContent = document.createElement('div');
popupContent.appendChild(document.createElement('h1')).textContent = 'My Popup';
popupContent.appendChild(document.createElement('p')).textContent = 'Test content.';
popupContent.appendChild(document.createElement('button')).textContent = 'close';
const popup = G.popup(popupContent);
popup.closeElement = 'button';