0

Everyone:

sorry that I am a noob and don't really no how to fix this:

I get an error in IE8 when I navigate AWAY from a page that has google maps on it.

Here are the error details

Webpage error details

Message: Object expected Line: 37 Char: 1 Code: 0 URI: http://www.yogahunter.com/detail/little-yoga-studio-9.htm

As it turns out, Line 37 has the following line on it (when you do a view source):

<body onload="load()" onunload="GUnload()">

I see that this is a fairly common problem. Does anyone know a fix for it?

I am posting the code from View Source for the page in question. Thanks in advance.

~~~~~~~~~~

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="X-UA-Compatible" content="IE=7" />
<title>
Little Yoga Studio - Details -
Yoga Hunter Directory
</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<link rel="stylesheet" type="text/css" href="/templates/BusinessBlue-v4.2/style/main.css" />
<link rel="stylesheet" type="text/css" href="/templates/BusinessBlue-v4.2/style/fileuploader.css" />
<meta name="keywords" content="little yoga studio,lake arrowhead yoga studios" />
<meta name="description" content="&lt;p&gt;Little Yoga Studio Teaching in the Iyengar tradition, The Little Yoga Studio promotes health, life and happiness. Located near Lake Arrowhead in the San Bernardino Mountains of Southern Calfornia, we offer a complete Yoga Center, 12 Weekly classes, rope wall and Iyengar Certified Instuctors.&lt;/p&gt;" />
<meta name="author" content="Yoga Hunter" />
<meta name="copyright" content="Copyright (c) 1997 - 2012 by Srisuda Romero. All rights reserved!" />
<script src="/javascripts/jquery-1.3.2.min.js"></script>
<script src="/javascripts/ajaxupload.js" type="text/javascript"></script>
<script src="/javascripts/jquery/jquery-ui-1.7.2.custom.min.js"></script>
<script type="text/javascript" src="/javascripts/jquery.validate.js"></script>
<link rel="stylesheet" type="text/css" href="/templates/BusinessBlue-v4.2/style/jcarousel.css" />
<script type="text/javascript" src="/javascripts/jquery/jquery.jcarousel.min.js"></script> 
<script type="text/javascript" src="/javascripts/flowplayer-3.2.6.min.js"></script>
<script type="text/javascript">
            jQuery.noConflict();
        </script>
<script type="text/javascript" src="/javascripts/formtool/formtool.js"></script>
<script type="text/javascript" src="/javascripts/prototype/prototype.js"></script>
<script type="text/javascript" src="/javascripts/scriptaculous/scriptaculous.js"></script>
<script type="text/javascript" src="/javascripts/thickbox/thickbox.js"></script>
<link rel="stylesheet" href="/javascripts/thickbox/ThickBox.css" type="text/css" media="screen" />
<link rel="stylesheet" href="/javascripts/fancybox/jquery.fancybox-1.3.4.css" type="text/css" media="screen" />
<script type="text/javascript" src="/javascripts/categ_selection/categ_selection.js"></script>
<script type="text/javascript">
        var valid_obj = new Object();
    </script>
</head>
<body onload="load()" onunload="GUnload()">
<script type="text/javascript"> 


function increase_height() {
   height = parseInt(document.getElementById('slide').style.marginTop);
   if (height<110) {
      document.getElementById('slide').style.marginTop = eval(height+2)+"px";
      setTimeout("increase_height()",0.0001);
   } else {
      document.getElementById('panel').style.zIndex = 200;
   }
}

function decrease_height() {
   height = parseInt(document.getElementById('slide').style.marginTop);
   document.getElementById('panel').style.zIndex = -1;
   if (height>0) {
      document.getElementById('slide').style.marginTop = eval(height-2)+"px";
      setTimeout("decrease_height()",0.0001);
   }
}

function show_panel() {

   height = parseInt(document.getElementById('slide').style.marginTop);
   if (height>0) {
      decrease_height();
   } else {
      increase_height();
   }
   return false;
}

function ajaxFunction()
{

var xmlHttp;

try
  {
  // Firefox, Opera 8.0+, Safari
  xmlHttp=new XMLHttpRequest();
  }
catch (e)
  {
  // Internet Explorer
  try
    {
    xmlHttp=new ActiveXObject("Msxml2.XMLHTTP");
    }
  catch (e)
    {
    try
      {
      xmlHttp=new ActiveXObject("Microsoft.XMLHTTP");
      }
    catch (e)
      {
      alert("Your browser does not support AJAX!");
      return false;
      }
    }
  }
  xmlHttp.onreadystatechange=function()
    {
    if(xmlHttp.readyState==4)
      {
      }
    }
   var url = "http://www.yogahunter.com/update_session.php";

   xmlHttp.open("POST", url, false);
   xmlHttp.setRequestHeader( 
    'Content-Type', 
    'application/x-www-form-urlencoded; charset=UTF-8' 
); 
   xmlHttp.send('url='+window.location);
  }
</script>
</script>
<script type="text/javascript"> 
jQuery(function($) {
    $(document).ready(function(){

                                    jQuery.validator.messages.required = "This field is required.";
                                                jQuery.validator.messages.remote = "Please fix this field.";
                                                jQuery.validator.messages.email = "Invalid email address format.";
                                                jQuery.validator.messages.url = "Invalid URL.";
                                                jQuery.validator.messages.date = "Invalid date format.";
                                                jQuery.validator.messages.dateISO = "Please enter a valid date (ISO).";
                                                jQuery.validator.messages.dateDE = "Bitte geben Sie ein gültiges Datum ein.";
                                                jQuery.validator.messages.number = "Required numeric field.";
                                                jQuery.validator.messages.numberDE = "Bitte geben Sie eine Nummer ein.";
                                                jQuery.validator.messages.digits = "Required integer field.";
                                                jQuery.validator.messages.creditcard = "Please enter a valid credit card number.";
                                                jQuery.validator.messages.equalTo = "Please enter the same value again.";
                                                jQuery.validator.messages.accept = "Please enter a value with a valid extension.";
                                                jQuery.validator.messages.maxlength = $.format("Please enter no more than {0} characters.");
                                                jQuery.validator.messages.minlength = $.format("Please enter at least {0} characters.");
                                                jQuery.validator.messages.rangelength = $.format("This field must have minimum {0} characters and maximum {1} characters..");
                                                jQuery.validator.messages.range = $.format("Please enter a value between {0} and {1}.");
                                                jQuery.validator.messages.max = $.format("Please enter a value less than or equal to {0}.");
                                                jQuery.validator.messages.min = $.format("Please enter a value greater than or equal to {0}.");


        function fireEvent(obj, evt) {
            var fireOnThis = obj;
            if (document.createEvent) {
                var evObj = document.createEvent('MouseEvents');
                evObj.initEvent(evt, true, false);
                fireOnThis.dispatchEvent(evObj);
            } else if (document.createEventObject) {
                fireOnThis.fireEvent('on'+evt);
            }
        }

                //valid obj isntantiated in header.tpl
                valid_obj.login_form = {
                debug: false,
                onKeyUp: true,
                onfocusout: false,
                errorElement: "span",
                errorClass: "errForm",
                submitHandler: function(form) {
                    // do other stuff for a valid form
                    if ($("#login_form").valid()) {
                        form.submit();
                    }
                },

                "rules": {user: {"required":true},pass: {"required":true}}, "messages": {}
        };

        $("#login_form").validate(valid_obj.login_form);

                var selects = $("#login_form").find("select");
                var crt;
                $.each(selects, function() {
                    crt = this.id;
                    if(typeof(valid_obj.login_form.rules[crt]) !== 'undefined') {
                        $("#"+crt).change(function() {
                          $(this).valid();
                        });
                    }
                });
    });
});
</script>
<script type="text/javascript"> 
jQuery(function($) {
    $(document).ready(function(){

                                    jQuery.validator.messages.required = "This field is required.";
                                                jQuery.validator.messages.remote = "Please fix this field.";
                                                jQuery.validator.messages.email = "Invalid email address format.";
                                                jQuery.validator.messages.url = "Invalid URL.";
                                                jQuery.validator.messages.date = "Invalid date format.";
                                                jQuery.validator.messages.dateISO = "Please enter a valid date (ISO).";
                                                jQuery.validator.messages.dateDE = "Bitte geben Sie ein gültiges Datum ein.";
                                                jQuery.validator.messages.number = "Required numeric field.";
                                                jQuery.validator.messages.numberDE = "Bitte geben Sie eine Nummer ein.";
                                                jQuery.validator.messages.digits = "Required integer field.";
                                                jQuery.validator.messages.creditcard = "Please enter a valid credit card number.";
                                                jQuery.validator.messages.equalTo = "Please enter the same value again.";
                                                jQuery.validator.messages.accept = "Please enter a value with a valid extension.";
                                                jQuery.validator.messages.maxlength = $.format("Please enter no more than {0} characters.");
                                                jQuery.validator.messages.minlength = $.format("Please enter at least {0} characters.");
                                                jQuery.validator.messages.rangelength = $.format("This field must have minimum {0} characters and maximum {1} characters..");
                                                jQuery.validator.messages.range = $.format("Please enter a value between {0} and {1}.");
                                                jQuery.validator.messages.max = $.format("Please enter a value less than or equal to {0}.");
                                                jQuery.validator.messages.min = $.format("Please enter a value greater than or equal to {0}.");


        function fireEvent(obj, evt) {
            var fireOnThis = obj;
            if (document.createEvent) {
                var evObj = document.createEvent('MouseEvents');
                evObj.initEvent(evt, true, false);
                fireOnThis.dispatchEvent(evObj);
            } else if (document.createEventObject) {
                fireOnThis.fireEvent('on'+evt);
            }
        }

                //valid obj isntantiated in header.tpl
                valid_obj.search_form = {
                debug: false,
                onKeyUp: true,
                onfocusout: false,
                errorElement: "span",
                errorClass: "errForm",
                submitHandler: function(form) {
                    // do other stuff for a valid form
                    if ($("#search_form").valid()) {
                        form.submit();
                    }
                },

                "rules": {search: {"required":true}}, "messages": {}
        };

        $("#search_form").validate(valid_obj.search_form);

                var selects = $("#search_form").find("select");
                var crt;
                $.each(selects, function() {
                    crt = this.id;
                    if(typeof(valid_obj.search_form.rules[crt]) !== 'undefined') {
                        $("#"+crt).change(function() {
                          $(this).valid();
                        });
                    }
                });
    });
});
</script>
<div class="page">
<div class="header">
<div class="center">
<div class="headerLogo">
<a href="/"><img src="/templates/BusinessBlue-v4.2/images/yoga_logo_green.jpg" border="0" width="980" height="85" alt="Yoga Hunter Logo" /></a>
</div>
</div>
</div>
<div class="hMenuContainer"><ul id="nav"><li><a href="/">Home</a></li><li><a href="/submit.php" title="Submit your link to the directory">Add Your Site - It's FREE</a></li><li><a href="/submit_article.php" title="Submit your article to the directory">Submit Article</a></li><li><a href="/index.php?list=latest" title="Browse latest submitted links">Newest Sites</a></li><li><a href="/index.php?list=latestarticles" title="Browse latest articles">Newest Articles</a></li><li><a href="/contact.php" title="Contact directory owner">Contact</a></li><li><a href="/search.php?type=advanced" title="Go to advanced search page" accesskey="4" rel="nofollow">Advanced Search</a></li></ul></div><div class="menu_bottom"><div style="width:960px; margin:auto;"><form class="headerSearch" action="/index.php" method="get" id="search_form"><input class="searchInput" type="text" name="search" maxlength="250" value="" /><button class="searchBtnCenter" type="submit">SEARCH</button></form><ul id="nav_bottom"><li><a href="/profile.php?mode=register" title="Register">Register</a></li><li><span class="slash">|</span></li><li><a href="/login.php" class="btn-slide">Login</a></li></ul></div></div></div><div class="path"><a href="/" style="font-weight: bold;">Yoga Hunter</a> <img src="/templates/BusinessBlue-v4.2/images/pathArrow.gif" alt=" - " /> <a href="/usys/" title="Yoga Studios In The United States">Yoga Studios In The United States</a>&nbsp;<img src="/templates/BusinessBlue-v4.2/images/pathArrow.gif" alt=" - " />&nbsp;<a href="/usys/californiays/" title="California Yoga Studios">California Yoga Studios</a>&nbsp;<img src="/templates/BusinessBlue-v4.2/images/pathArrow.gif" alt=" - " />&nbsp;Listing Details</div><div class="center1"><div class="centerContainer"><div class="centerContainerM">
<script type="text/javascript"> 
jQuery(document).ready(function() {
jQuery('#mycarousel').jcarousel({
        visible: 4
    });

});
</script><h1>Little Yoga Studio of Agua Fria,, CA</h1>26898 Hwy 189, Agua Fria,, CA 92317<br>Phone: 909-336-6703<table border="0" width="680"><tr><td class="label_detail" style="padding-top: 25px;">Preview:</td><td class="smallDesc" align="left" style="padding-top: 25px;"><img src="/images/screenshots/9-346x260.jpg" alt="screenshot of Little Yoga Studio" border="0"/> </td></tr><tr><td class="label_detail">Studio Name:</td><td class="smallDesc" align="left"><span class="link" id="edittitle">Little Yoga Studio</span></td></tr><tr><td class="label_detail">Category:</td><td class="smallDesc" align="left"><a href="http://www.yogahunter.com/usys/californiays/" title="California Yoga Studios">Yoga Studios In The United States: California Yoga Studios</a></td></tr><tr><td class="label_detail">Description:</td><td class="smallDesc" align="left" id="editdescrip_9"><p>Little Yoga Studio Teaching in the Iyengar tradition, The Little Yoga            Studio promotes health, life and happiness. Located near Lake  Arrowhead            in the San Bernardino Mountains of Southern Calfornia, we  offer a complete            Yoga Center, 12 Weekly classes, rope wall and Iyengar  Certified Instuctors.</p></td></tr><tr><td class="label_detail" colsa[>Address:</td><td class="smallDesc" align="left" colspan="2">26898 Hwy 189</td></tr><tr><td class="label_detail" colsa[>City:</td><td class="smallDesc" align="left" colspan="2">Agua Fria,</td></tr><tr><td class="label_detail" colsa[>State:</td><td class="smallDesc" align="left" colspan="2">CA</td></tr><tr><td class="label_detail" colsa[>Postal Code:</td><td class="smallDesc" align="left" colspan="2">92317</td></tr><tr><td class="label_detail" colsa[>Phone Number:</td><td class="smallDesc" align="left" colspan="2">909-336-6703</td></tr><tr><td class="smallDesc" align="left" colspan="2">
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=false"> 
</script>
<script type="text/javascript"> 
var geocoder;
var map;
  function load() {
    geocoder = new google.maps.Geocoder();
    var address = '26898 Hwy 189,Agua Fria,,CA';
geocoder.geocode( { 'address': address}, function(results, status) {
      if (status == google.maps.GeocoderStatus.OK) {
        map.setCenter(results[0].geometry.location);
        var marker = new google.maps.Marker({
            map: map,

            position: results[0].geometry.location,
            title:"Little Yoga Studio"
        });

         contentString = '<b>Little Yoga Studio <br>26898 Hwy 189<br> Agua Fria,<br> CA<br> 92317<br> 909-336-6703</b>';

    var infowindow = new google.maps.InfoWindow({
        content: contentString

    });

    infowindow.open(map,marker);
         map.panBy(10,-80); 

      } else {

      }
});

    var myOptions = {
      zoom: 16,
      mapTypeId: google.maps.MapTypeId.ROADMAP
    }
    map = new google.maps.Map(document.getElementById("map"), myOptions);

  }

//]]>
</script>
<div id="map" style="margin:0px auto; width: 400px; height: 300px;"></div><br/><br/></div></td></tr><tr><td colspan="2"><div style="float: right;"></div></td></tr><tr><td colspan="2"><fieldset><legend>Ratings</legend><center><a href="/login.php" class="error">Please Login To Leave A Rating.</a><br><b>Average rating:</b> (0 votes)</fieldset></td></tr><tr><td colspan="2"><fieldset><legend>Reviews</legend><h3>No Reviews Yet.</h3><br><a href="/login.php" class="error">Please Log In To Leave a Comment.</a><br></fieldset></td></tr><tr><td colspan="2">&nbsp;</td></tr></table><script type="text/javascript">/* <![CDATA[ */var root = '';
   var a = document.getElementsByTagName("a");
   for(i = 0; i< a.length; i++)
      if(a[i].id != '')
         a[i].onclick = count_link;
   function count_link() {
      i = new Image();
      i.src= root+'/cl.php?id='+this.id;
      return true;
   }

   /* ]]> */</script>
<div style="clear: both"></div></ul></div><div class="centerContainerB"></div></div><div class="rightContainer">
<ul id="sortable_right" style="list-style-type: none; padding: 0px; margin: 0;">
<li class="widget_right">
<div class="box">
<div class="boxTopCenter">Latest articles</div>
<div class="boxMiddle">
<div class="boxSponsored" >
<a class="boxSponsoredA" href="/articles/the-differences-between-common-yoga-styles-407.htm" title="The Differences Between Common Yoga Styles">
The Differences Between Common Yoga Styles
</a>
<br/><br/>
</div>
<div class="boxSponsored" >
<a class="boxSponsoredA" href="/articles/teaching-yoga-in-jail-making-a-difference-through-yoga-406.htm" title="Teaching Yoga In Jail: Making A Difference Through Yoga">
Teaching Yoga In Jail: Making A Difference Through Yoga
</a>
<br/><br/>
</div>
<div class="boxSponsoredLast" >
<a class="boxSponsoredA" href="/articles/awakening-1.htm" title="Awakening">
Awakening
</a>
<br/><br/>
</div>
</div>
</div>
</li>
</ul>
</div>
<div style="clear: both; height: 30px;"></div></div><div class="footer"><div class="copy"><a href="http://www.phplinkdirectory.com" title="Directory Script by PHP Link Directory">Directory Script by PHP Link Directory</a><br /><a href="http://www.phpldclub.com" title="http://www.phpldclub.com">PhpLDClub - free templates for you</a></div></div><script type="text/javascript"> 

  var _gaq = _gaq || [];
  _gaq.push(['_setAccount', 'UA-555555-5']);
  _gaq.push(['_trackPageview']);

  (function() {
    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
  })();

</script></body></html>

~~~~~~~~~~~

1 Answers1

1

There is no function GUnload in Maps Version3.

Remove onunload="GUnload()" from the body-tag

The GUnload-function has been implemented in v2 to prevent from memory-leaks.

Dr.Molle
  • 116,463
  • 16
  • 195
  • 201
  • Thanks So Much Dr. Molle! It looks like that did the trick. Hopefully that unload wasn't needed for something else (besides the map), but once I removed it, I stopped getting the errors in Internet Explorer when navigating away from the page. So a big Thank You again for your help. – user1344629 Apr 21 '12 at 16:08