Solved :)
Changed this:
map = new GMap2(document.getElementById("map_canvas"));
In:
map = new GMap2(document.getElementById("map_canvas"),{ size: new
GSize(430, 315) });
On Tuesday, January 22, 2013 7:57:42 PM UTC+1, Johan van der Meer wrote:
>
> 'm stuck with a issue regarding maps. I'm using the Joomla component
> Listbingo, and made a order form with hidden divs and steps.
>
> In the second step Google Maps has to show up, but it is not rendering on
> the right way. Some parts are gray, and the location is not correct. Now
> i'm understanding that google maps is not happy with hidden divs, but i
> cannot resolve this issue with the answers that already bin given.
>
> Maybe you guys have any idea? this is the script that i'm using:
>
> <script
>
> src="http://maps.google.com/maps?file=api&v=2&sensor=false&key=
> <http://maps.google.com/maps?file=api&v=2&sensor=false&key=><?php echo
> $this->params->get('map_api_key');?>"
> type="text/javascript"></script><script type="text/javascript">//<!--
> var map;
> var marker;
> var markeradded=false;
> var markerfixed=false;
> var current_point;
> var catIcon;
>
>
> function initialize()
> {
> if (GBrowserIsCompatible())
> {
> map = new GMap2(document.getElementById("map_canvas"));
> map.setUIToDefault();
> map.disableScrollWheelZoom();
> geocoder = new GClientGeocoder();
>
>
> }
> }
>
> window.addEvent('domready',function()
>
> {
>
> initialize();
> //var mapSlider = new Fx.Slide('gb_maplocator', {duration: 1000});
> var mapSlider = document.getElementById('gb_maplocator');
> //var mapSlider = $('gb_maplocator');
>
> <?php if( $this->data->published==0){?>
> mapSlider.style.visibility = 'hidden';
> mapSlider.style.height = '0px';
> mapSlider.style.overflow = 'hidden';
> <?php } ?>
>
>
> $$('.gb_map_controls').addEvent('click',function(){
> if(this.getProperty('value')==1)
> {
> mapSlider.style.visibility = 'visible';
> mapSlider.style.height = 'auto';
>
>
> }
> else if(this.getProperty('value')==0)
> {
> mapSlider.style.visibility = 'hidden';
> mapSlider.style.height = '0px';
> mapSlider.style.overflow = 'hidden';
> }
> });
>
> $('btnAddtomap').addEvent('click',
> function(e) {
> $('map_level').value=map.getZoom();
> $('map_glat').value=current_point.lat();
> $('map_glng').value=current_point.lng();
> });
>
>
>
> GEvent.addListener(map, "zoomend",
> function(oldlevel,newlevel) {
> $('map_level').value=newlevel;
> });
>
> GEvent.addListener(map, "dragend",
> function() {
> current_point=map.getCenter();
> });
>
> <?php
> if( $this->pin->map_image )
> {
> ?>
> catIcon = new GIcon();
> catIcon.image = '<?php echo
> JUri::root().$this->pin->map_image.".".$this->pin->extension;?>';
> catIcon.shadow = '<?php echo
> JUri::root().$this->pin->shadow_image.".".$this->pin->extension;?>';
>
> //catIcon.iconSize = new GSize(25.0, 32.0);
> //catIcon.shadowSize = new GSize(42.0, 32.0);
> catIcon.iconAnchor = new GPoint(12.0, 16.0);
> catIcon.infoWindowAnchor = new GPoint(12.0, 16.0);
> map.disableScrollWheelZoom();
>
>
> <?php
> }
> if(abs($this->data->glat)==0&&abs($this->data->glng)==0)
> {
> $country=$mainframe->getUserState($option."countrytitle");
> $region=$mainframe->getUserState($option."regiontitle");
>
> $address= array();
> if($region!= JText::_('ALL') && !empty($region)){
> $address[]=$region;
> }
>
> if($country!= JText::_('ALL') && !empty($country)){
> $address[]=$country;
> }
> array_filter ($address);
>
> if(count($address)>0)
> {
> ?>
> showAddress('<?php echo implode(',',$address)?>');
> <?php
> }
> else
> {
> ?>
> showAddress('<?php echo
> $this->params->get('map_default_address','Brisbane, Australia');?>');
> <?php
> }
> }
> else
> {
> if( ! $this->pin->map_image && $this->data->map_image )
> {
> ?>
> catIcon = new GIcon();
> catIcon.image = '<?php echo
> JUri::root().$this->data->map_image.".".$this->data->extension;?>';
> catIcon.shadow = '<?php echo
> JUri::root().$this->data->shadow_image.".".$this->data->extension;?>';
> //catIcon.iconSize = new GSize(25.0, 32.0);
> //catIcon.shadowSize = new GSize(42.0, 32.0);
> catIcon.iconAnchor = new GPoint(12.0, 16.0);
> catIcon.infoWindowAnchor = new GPoint(12.0, 16.0);
>
> <?php }?>
>
> current_point=new GLatLng(<?php echo $this->data->glat;?>,<?php
> echo $this->data->glng;?>);
> map.setCenter(current_point,<?php echo $this->data->level;?>);
> marker = new GMarker(current_point,{icon:catIcon,draggable:true});
>
> GEvent.addListener(marker, "dragend",
> function(latlng) {
> current_point = latlng;
> $('map_level').value=map.getZoom();
> $('map_glat').value=latlng.lat();
> $('map_glng').value=latlng.lng();
>
> });
>
> marker.disableDragging();
> map.addOverlay(marker);
>
>
> markeradded=true;
> markerfixed=true;
> $('addMarkerButton').disabled=true;
> $('addMarkerButton').setHTML("<?php echo
> JText::_('REMOVE_MARKER');?>");
> $('fixMarkerButton').setHTML("<?php echo
> JText::_('UNFIX_MARKER');?>");
> $('map_level').value=map.getZoom();
> $('map_glat').value=current_point.lat();
> $('map_glng').value=current_point.lng();
> <?php if($this->data->published==0){?>
>
> mapSlider.style.visibility = 'hidden';
> mapSlider.style.height = "0px";
> mapSlider.style.overflow = 'hidden';
> <?php }?>
>
> <?php
> }
> ?>
> if(markeradded)
> {
> $('fixMarkerButton').disabled=false;
> }
> else
> {
> $('fixMarkerButton').disabled=true;
> }
> });
>
> window.addEvent('unload',function(){GUnload()});
> //-->
> </script><div class="gb_madata_publish">
> <label><?php echo JText::_('Activeer Google Maps');?>:</label><div
> class="gb_madata_publish_control"><?php echo
> $this->lists['status'];?></div></div>
> <div class="gb_map_locator" id="gb_maplocator"><a id="btnAddtomap"><?php echo
> JText::_('LOCATE_ADDRESS_TO_MAP');?></a><fieldset class="adminform"><input
> type="hidden" name="glat"
> id="map_glat" /> <input type="hidden" name="glng" id="map_glng" /> <input
> type="hidden" name="level" id="map_level" />
> <div id="map_canvas" style="width: 310px; height: 310px"></div><br /><div
> class="mapbuttons"><a id="addMarkerButton"><?php echo
> JText::_('ADD_MARKER');?></a><a id="fixMarkerButton"><?php echo
> JText::_('FIX_MARKER');?></a></div></fieldset>
>
> </div>
>
>
>
>
--