Skip to main content
Announcements
Join us at Qlik Connect for 3 magical days of learning, networking,and inspiration! REGISTER TODAY and save!
cancel
Showing results for 
Search instead for 
Did you mean: 
rbartley
Specialist II
Specialist II

Qlik Sense Mashup - Single Integration API - II

 

Hi everyone,

 

This is a continuation from a previous post (Previous post),  where I raised the issue of visualizations not responding when iframes are hidden and then shown using the Single Integration API.  For the mashup I was  working on, I got around this by setting the height to 0px then 100% instead of hiding/showing in jquery (display:none).  However, now I have found that this trick does not work for Qlik Sense maps (it does for GeoAnalytics, but I can't use these maps for my requirement).

I have two tabs and two iframes referring to sheets in my app.  When the page loads, I give the second iframe a height of 0px and then when the second tab is clicked, I make the height 100%.  The bar chart adapts as expected and even the legend does, but the map does not (see below).

unresponsive map.PNG

I  have tried post-processing the html, by looking for elements with the idevio-map-canvas class and setting the height of this, but it seems as though the canvas adapts but the content of the canvas (the map) does not.  The only way I have found of making this adapt is to update the url of the iframe, but this loads the whole sheet again, causing a delay and eliminating the gains of loading both sheets when the page is first opened.

Any ideas gratefully received.

 

Richard

 

2 Replies
rur
Employee
Employee

Hi! 

From what I can tell it seems like the map canvas is its appropriate size but the map is zoomed out. Don't know if it helps but one thing that may help would be to ensure that the frame with the map is loaded with its intended size first and then hidden some how. I believe what happens is that the map loads and zooms when it is 0px in size and then when you (show it) increase the size it keeps the resolution from when it was loaded. 

rbartley
Specialist II
Specialist II
Author

Hi,  that's not going to work for me since I don't want to show all frames on load, only the selected one, so I don't see any other options then specifying display:none or a height of 0.  Are you suggesting something else?