IE7 - operation aborted error - please help

HI folks,

I’m spending days trying to find a solution to this but I’m getting knowhere fast:

http://tinyurl.com/av4cbpm

I keep getting the operation aborted error in Joomla using IE 7 and the browser closes.

Can anyone please tell me how I can debug this error and find out which file is causing the problem?

Any help very much appreciated.

Hey Mattastic

From memory this error occurs when you’re trying to write/append something to a parent element from a child element.

First step to try to remedy this is to usually move all scripts that can be moved from the <head> to just above the </body>

Second step is to check that any inline-scripts (basically any <script> tag in between <body> and </body> that is inside another element) does not try to modify the parent container.

Your next step in debugging, while probably unrelated to this error, is to make sure you’re not loading libraries unnecessarily and to generally clean up the scripts section.

In your current <head> you have the following code - which could be optimised.


[COLOR=#ff0000]  <script src="/media/system/js/mootools-core.js" type="text/javascript"></script>
  <script src="/media/system/js/core.js" type="text/javascript"></script>
  <script src="/media/system/js/mootools-more.js" type="text/javascript"></script>

</div>
[/COLOR]    <link rel="stylesheet" href="/templates/system/css/system.css" />
    <link rel="stylesheet" href="/templates/system/css/general.css" />

    <!-- Created by Artisteer v4.0.0.58475 -->
    
    
    <meta name="viewport" content="initial-scale = 1.0, maximum-scale = 1.0, user-scalable = no, width = device-width">

        <!--[if lt IE 9]><script src="https://html5shiv.googlecode.com/svn/trunk/html5.js"></script><![endif]-->
    <link rel="stylesheet" href="/templates/bxccg_nov12/css/template.css" media="screen">
        <!--[if lte IE 7]><link rel="stylesheet" href="/templates/bxccg_nov12/css/template.ie7.css" media="screen" /><![endif]-->
    <link rel="stylesheet" href="/templates/bxccg_nov12/css/template.responsive.css" media="all">


[COLOR=#ff0000]    <script>if ('undefined' != typeof jQuery) document._artxJQueryBackup = jQuery;</script>
    <script src="/templates/bxccg_nov12/jquery.js"></script>
     <script>jQuery.noConflict();</script>
[/COLOR]
[COLOR=#0000ff]    <script src="/templates/bxccg_nov12/script.js"></script>
[/COLOR][COLOR=#ff0000]    <script>if (document._artxJQueryBackup) jQuery = document._artxJQueryBackup;</script>
[/COLOR][COLOR=#0000ff]    <script src="/templates/bxccg_nov12/script.responsive.js"></script>
[/COLOR]    <link rel="stylesheet" type="text/css" media="all" href="/media/widget/nhs.fs.widget.css"/>
[COLOR=#0000ff]    <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.4/jquery.min.js" type="text/javascript"></script>
    <script src="/media/widget/nhs.fs.widget.min.js" type="text/javascript"></script>
[/COLOR]


<meta name="google-site-verification" content="" />

[COLOR=#0000ff]<script type="text/javascript">
 var _gaq = _gaq || [];
 _gaq.push(['_setAccount', 'UA-30746224-1']);
 _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>
[/COLOR]

I’ve highlighted in red the scripts I think can be removed completely.

  • Mootools: There is no evidence in your other scripts that Mootools is being used. If you think/know otherwise then you should obviously keep it.
  • Ending </div> tag - this definitely shouldn’t be there
  • jQuery backup - you know exactly which scripts are loaded at this point, no need for this.
  • local jQuery copy - this can be replaced with a CDN version
  • jQuery.noConflict script is not required if you get rid of Mootools
  • 2nd jQuery backup - also not really required as far as I can see.

The scripts highlighted in blue can be moved to end of the <body> and you’ll need to make sure that the CDN version of jQuery is the first script to replace the local version.

This would probably look something like this in the <head>


    <meta name="viewport" content="initial-scale = 1.0, maximum-scale = 1.0, user-scalable = no, width = device-width">
    <meta name="google-site-verification" content="" />


    <link rel="stylesheet" href="/templates/system/css/system.css" />
    <link rel="stylesheet" href="/templates/system/css/general.css" />
    <link rel="stylesheet" href="/templates/bxccg_nov12/css/template.css" media="screen">
       <!--[if lte IE 7]><link rel="stylesheet" href="/templates/bxccg_nov12/css/template.ie7.css" media="screen" /><![endif]-->
    <link rel="stylesheet" href="/templates/bxccg_nov12/css/template.responsive.css" media="all">
    <link rel="stylesheet" type="text/css" media="all" href="/media/widget/nhs.fs.widget.css"/>


       <!--[if lt IE 9]><script src="https://html5shiv.googlecode.com/svn/trunk/html5.js"></script><![endif]-->

And like this before the end of the body


    <script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js"></script>
    <script src="/templates/bxccg_nov12/script.js"></script>
    <script src="/templates/bxccg_nov12/script.responsive.js"></script>
    <script src="/media/widget/nhs.fs.widget.min.js" type="text/javascript"></script>

    <script type="text/javascript">
     var _gaq = _gaq || [];
      _gaq.push(['_setAccount', 'UA-30746224-1']);
     _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>

Note that I have used the latest version of jQuery here, you had a local reference to 1.7.1 and a CDN reference to 1.4 - both are quite old now and 1.9 will offer some performance enhancements and bug fixes.

Let me know if this helps resolve your issue at all.

Thankyou so much for your reply!!

I no have it working, thankyou again!!!