I'm developing a Dynamic content macro for Confluence Cloud that returns a dynamic HTML table.
Dynamic Content Macro documentation says "If the size of the macro output content size is dynamic, call AP.resize(w,h) immediately after the DOM of your iframe is loaded."
To retrieve width and height of the content, I found the following code on Internet:
var newheight = document.getElementById(id).contentWindow.document .body.scrollHeight; var newwidth = document.getElementById(id).contentWindow.document .body.scrollWidth;
But the frame id is generated dynamically and is not accessible through Context Parameter.
So, how can I adjust i frame width and height to fit with content inside a dynamic content macro ?
Thanks
Xavier
I believe that the simplest method is to just use AP.resize() from inside your iFrame. Like so my Sketchfab for Connect addon does.
Robert, Thanks. It works fine if I don't declare parameter height in atlassian-connect.json. I will ask Atlassian to describe AP.resize() API behavior when there is no parameter (https://developer.atlassian.com/static/connect/docs/latest/javascript/module-AP.html)
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
AP.resize('100%', 'calc(100vh - 160px)');
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.