Het probleem is als volgt.

Ik heb een functie dat de google maps op 100% zet en zoom + resize functies uitvoert.



$(document).ready(function()
{
jQuery(document).on("click","#map_toggler,#showmap", function(t) // shopmap is voor mobiel, // maptoffler is fuillscreen dekstop
{ 
	var id = $(this).attr('id');
	
	
	id = $(this).attr('id');
	//sessie aanmaken
	
		waarde = 1;
		$.post('<?=HTML_ROOT?>inc/fs_sessie.php', { fs: waarde });
	
	
	if ( $(window).width() > 734 ) // DESKTOP
	{
	
		$('#close_full_desk').show();
		$('#close_full').hide();
		$("#map").css("top", 70);
	} else {
		$('#close_full_desk').hide();
		$('#close_full').show();
		$("#map").css("top", 96);	
	}
if ($(".loading-div").show(), $(".tabnavig").addClass("fullscreen"), $(".dashicons-before").css("margin-top",
        "5px"), height = $(window).height() - 68, $(".parentMap").show(), $("#map").css("position", "fixed").css("zIndex", 999).css("left", 0).css("width", "100%").css("height", height + "px"), $(
        window).width() < 734) $("#showmap").hide(), $("body").css("position", "fixed"), $(
        ".radius.mob").attr("style", "display:block!important"),
    $(".fa.fa-map-marker.klik").attr("style", "display:inline-block!important"), $(
        ".tabnavig .fa.fa-map-marker.small").attr("style", "top: 0px;display:block!important");
		
else {
    var ftop = $(window).height() / 2 - 207,
        fleft = $(window).width() / 2 - 325;
    $(".filter_parent").attr("style", "overflow: hidden;top: " + ftop + "px!important;left:" + fleft + "px;z-index: 99999;width: 680px;margin: 0px auto;position: fixed;"), $("body").css("overflow", "hidden")
	}
	map.setZoom(map.getZoom()-1),
	google.maps.event.trigger(map,"resize"),
	$(".gmap").children(".notice").first().addClass("fullscreen"),
	$(".gmap").children(".notice").first().css("left","50%").css("left","-=338px");


// MET PHP DE SESSSIE BEKIJKEN
//<?php
if ($_SESSION['fs']==1)
{ 
//?>
jQuery(function(){
$('#showmap').trigger('click');
})  

//<?php }  //?>
	
}
});


Als ik op de knop met id='showmap' klik werkt alles naar behoren perfect.
Maar ik maar een sessie aan bij een click event. Omdat men namelijk IN FULLSCREEN op een bepaalde links kunnen klikken die naar een andere pagina verwijzen. Eenmaal aangekomen op die andere pagina, wil ik aan de hand van deze sessie duidelijk maken dat fullscreen nog actief is. Als dit zo is dan wil ik een click triggeren. Als ik dit doe krijg werk het niet goed:



Dit staat in de head tag.

Ik zie dan in de console het volgende:


Uncaught TypeError: Cannot read property 'setZoom' of null
    at HTMLSpanElement.<anonymous> (afghanistan:471)
    at HTMLDocument.dispatch (jquery-1.10.2.min.js:5)
    at HTMLDocument.v.handle (jquery-1.10.2.min.js:5)
    at Object.trigger (jquery-1.10.2.min.js:5)
    at Object.e.event.trigger (jquery-migrate-1.2.1.min.js:2)
    at HTMLSpanElement.<anonymous> (jquery-1.10.2.min.js:5)
    at Function.each (jquery-1.10.2.min.js:4)
    at e.fn.init.each (jquery-1.10.2.min.js:4)
    at e.fn.init.trigger (jquery-1.10.2.min.js:5)
    at HTMLDocument.<anonymous> (afghanistan:1429)


Maps is dus null, maar dat is vreemd, want hij is al aangemaakt. Ook al zet ik deze in de footer, krijg ik hetzelfde.

Hoe kan ik zodanig een click trigger uitvoeren, zodat ik hetzelfde effect krijg als wanneer ik met de muis op het element klik?

[size=xsmall]Toevoeging op 25/03/2017 20:33:12:[/size]

EEN UPDATE:

als ik dit doe

			setTimeout(function() {
				  
					
				$('#showmap').trigger('click');							
			}, 1500);	


Dan werkt hij wel. Dus hij is nog niet helemaal geladen, wat vreemd is, want ik zet de trigger in de




Als ik wil kijken of de map geladen is met

jQuery(function(){
google.maps.event.addListener(map, 'tilesloaded', function() {
   googleMapsLoaded = true;
   alert('fg');
   google.maps.event.clearListeners(map, 'tilesloaded');
});
	
});


in de footer, dan krijg ik deze foutmelding:

Uncaught TypeError: Cannot read property '__e3_' of null


Hoe is dit dan te verhelpen?

Staat de code die je noemt wel netjes binnen de load structuur? Zoals je het nu neerzet is dat namelijk niet het geval. Zou je je code zoals je deze hebt eens kunnen posten? Uiteraard dit keer wel netjes binnen code tags zodat het leesbaar is?
Ik heb alle code zowel in php in 1 file gedaan. <PHP >< maar achter slashes want anders toont hij ze hier niet in 1 codevlak.

Wat bedoel je precies binnen de load structuur? Bedoel je daar de document ready function in de <head></head> waar hij dus staat ?

Reageren