[ka-Map-users] iframe passing extents back to containing page

Paul Spencer pspencer at dmsolutions.ca
Wed Sep 6 08:01:57 EDT 2006


Percy,

to set the extents of the iframe, you can do something like:

document.getElementById('frameid').contentWindow.myKaMap.zoomToExtents 
(minx,miny,maxx,maxy);

Cheers

Paul

On 6-Sep-06, at 12:41 AM, percy wrote:

> So, now that we have a way to GET the extents that the user zoomed  
> to, we'd like to do the opposite!
>
> We'd like to SET the extents of the iframe, based on what the user  
> has already zoomed to, after they look at their results and then  
> hit the back button in their browser to refine their search.
>
> I can capture and parse the extents from the bounding box fields  
> using the window.onload event, but I am trying to figure out the  
> most elegant way to pass these to the iframe object. I couldn't  
> find a "setGeoExtents" method. I thought about programmatically  
> poking the values into the src property of the iframe object, but I  
> worry that I am setting myself up for some creepy cross-browser DOM  
> issues.
>
> Any ideas on the best approach to this? Here's the beta version we  
> are using for testing:
> http://ngmdb.usgs.gov/ngmdb_work/ngm_compsearch_map.html
>
> Thanks,
> Percy
>
> percy wrote:
>> Hi Paul, below is the code we ended up using, in case it helps  
>> anyone else...
>> And here's the page it's in for testing:
>> http://geospatial.research.pdx.edu/~bjpd/usgs/ngm_quicksearch9.html
>>
>> Thanks again,
>> Percy
>>
>> -------------------iframe code to dump extents into hidden fields  
>> for database search----------------
>> <iframe id = "geosrchmap" name= "geosrchmap" src = "http:// 
>> geospatial.research.pdx.edu/~bjpd/kamap-cvs/htdocs/iframe.html"  
>> width = "100%" height = "400">
>> </iframe>
>> <input name = "showextents" value ="Use This Extent" type =  
>> "button" onclick = "storeExtents()">
>> <script type = "text/javascript" language = "javascript">
>> function storeExtents()
>> {
>> var myextents = document.getElementById 
>> ('geosrchmap').contentWindow.myKaMap.getGeoExtents()
>> //alert(myextents)
>> document.getElementById('kaminx').value = myextents[0]
>> document.getElementById('kaminy').value = myextents[1]
>> document.getElementById('kamaxx').value = myextents[2]
>> document.getElementById('kamaxy').value = myextents[3]
>> }
>>
>> </script>
>> <input id="kaminx" name="kaminx" type = "hidden" value="" >
>> <input id="kaminy" name="kaminy" type = "hidden" value="" >
>> <input id="kamaxx" name="kamaxx" type = "hidden" value="" >
>> <input id="kamaxy" name="kamaxy" type = "hidden" value="" >
>> --------------------------------------------------------------------- 
>> ------------------------------------
>>
>> Paul Spencer wrote:
>>> Percy,
>>>
>>> I'll try to catch you on IRC (pagameba) but in case I don't ...
>>>
>>> If your iframe is loaded from the same site as your main page,  
>>> then you are allowed to script between them.  Whatever triggers  
>>> your query, you can do one of the following:
>>>
>>> 1) from the main page (in response to clicking a button or  
>>> something), you can call the kaMap object in the frame ...
>>>
>>> document.getElementById 
>>> ('frameid').contentWindow.myKaMap.getExtents();
>>>
>>> 2) from the iframe (in response to an event for instance), you  
>>> can call a function in the parent window ...
>>>
>>> window.parent.someFunction();
>>>
>>> Cheers
>>>
>>> Paul
>>>
>>> On 31-Jul-06, at 1:19 PM, percy wrote:
>>>
>>>> I would like to embed a kamap iframe within a database search  
>>>> page and
>>>> have it pass back the extent of what the user has zoomed to so  
>>>> that I
>>>> can use this in a query to my database.
>>>>
>>>> the goofy part is that the embedding page is a Perl CGI, so I  
>>>> think I'm stuck using Perl mapscript to access the iframe's  
>>>> properties.
>>>>
>>>> any hints on the best way to do this? I'm on the IRC right now...
>>>>
>>>> thanks,
>>>> percy
>>>>
>>>> PS I searched the mailing list archives already...
>>>>
>>>> _______________________________________________
>>>> ka-Map-users mailing list
>>>> ka-Map-users at lists.maptools.org
>>>> http://lists.maptools.org/mailman/listinfo/ka-map-users
>>>
>>> +-----------------------------------------------------------------+
>>> |Paul Spencer                           pspencer at dmsolutions.ca   |
>>> +-----------------------------------------------------------------+
>>> |Applications & Software Development                              |
>>> |DM Solutions Group Inc                 http://www.dmsolutions.ca/|
>>> +-----------------------------------------------------------------+
>>>
>>>
>>>
>>>
>>>
>>
>
> _______________________________________________
> ka-Map-users mailing list
> ka-Map-users at lists.maptools.org
> http://lists.maptools.org/mailman/listinfo/ka-map-users

+-----------------------------------------------------------------+
|Paul Spencer                           pspencer at dmsolutions.ca   |
+-----------------------------------------------------------------+
|Applications & Software Development                              |
|DM Solutions Group Inc                 http://www.dmsolutions.ca/|
+-----------------------------------------------------------------+






More information about the ka-Map-users mailing list