Skip to end of metadata
Go to start of metadata

I have a strange issue with my Confluence 2.10 with Theme Builder 3.3.3 on certain computers in Internet Explorer 7 & previous . My company just launched Confluence as our Intranet, and the site works perfectly for most of our users in Internet Explorer. However, I have a handful of users who, when they use Confluence IE, the 2 top menu bars appears as a colored line when the pages first load and then expand after a second or so. Once expanded, if you mouse over the menu there is approx. a 3-5 second delay before the menu will highlight & allow you to click and if there is a submenu the delay seems to increase.

I have 2 computers which I am testing while trying to resolve this issue. If I install Firefox, the menus load immediatly and there is no slowness. My company can not be using Firefox, however, because we have other applications which will not work properly.

I am using all Compound Menu items, and I have tried all of the fixes on the Menu Performance Tuning page, except caching, because I have many pages with security applied on them.

I would very much appreciate any assistance, if there is a better way for me to report an issue, please let me know. Thank you!

Here is a sample of code I am using for the top menu bar.

{table:width=100%|cellpadding=0|cellspacing=0|border=0}{tr}{td:valign=middle}
{menubar:id=PWCTop|shadows=-4,-6}
{compound-menuitem:home|space=PWCorp|caption=Home}
{menuseparator}
{menu}Departments
{compound-menuitem:wikiPage|space=PWCORP|page=Administrativ|caption=Administrative
{compound-menuitem:wikiPage|space=PWCORP|page=Care & Quality|caption=Care & Quality}
{compound-menuitem:wikiPage|space=PWCORP|page=CEO|caption=CEO}
{compound-menuitem:wikiPage|space=PWCORP|page=Claims|caption=Claims}
{compound-menuitem:wikiPage|space=PWCORP|page=Compliance|caption=Compliance}
{compound-menuitem:wikiPage|space=PWCORP|page=IT|caption=IT}
{compound-menuitem:wikiPage|space=PWCORP|page=Marketing|caption=Marketing}
{compound-menuitem:wikiPage|space=PWCORP|page=Enrollment|caption=Enrollment}
{compound-menuitem:wikiPage|space=PWCORP|page=Services|caption=Services}
{menu}
{menuseparator}
{compound-menuitem:wikiPage|space=IT|page=Applications|caption=Applications}
{menuseparator}
{compound-menuitem:wikiPage|space=PWCORP|page=Resources|caption=Resources}
{menuseparator}
{menu}Learning Center
{compound-menuitem:wikiPage|space=PWCORP|page=External Conferences|caption=External Conferences}
{compound-menuitem:wikiPage|space=PWCORP|page=Internal Training|caption=Internal Training}
{compound-menuitem:wikiPage|space=PWCORP|page=Online Education|caption=Online Education}
{compound-menuitem:wikiPage|space=PWCORP|page=How-To's|caption=How-To's}
{menu}
{menuseparator}
{compound-menuitem:wikiPage|space=PWCORP|page=Calendar|caption=Calendar}
{menuseparator}
{compound-menuitem:wikiPage|space=PWCORP|page=Forms|caption=Forms}
{menuseparator}
{compound-menuitem:wikiPage|space=MTG|page=Home|caption=Meetings}
{menubar}
{td}
{td:align=right|valign=middle}
{menubar:id=Toolbr|shadows=-4,-6}
  {menuseparator}
  {menu}Edit
     {compound-menuitem:edit|caption=Edit this Page}
     {compound-menuitem:editinword|caption=Edit in Word}
    {menuseparator}
    {submenu}New
     {compound-menuitem:newpage|caption=Page}
     {compound-menuitem:newnews|caption=News}
     {compound-menuitem:newcomment|caption=Comment}
     {compound-menuitem:pageattachments|caption=Attachment}
    {submenu}
 {menuseparator}
     {compound-menuitem:information|caption=Page Info & History}
 {menuseparator}
    {compound-menuitem:webui|location=system.content.action/secondary|key=importworditem1|caption=Import from Word Doc}
    {menuseparator}
     {compound-menuitem:copy|caption=Copy this Page}
   {menuseparator}
       {compound-menuitem:remove|caption=Remove this Page}
    {menuseparator}
    {submenu}Administration
       {compound-menuitem:spaceadmin|caption=Space Admin}
         {menuseparator}
            {compound-menuitem:siteadmin|caption=Confluence Admin}
    {submenu}
  {menu}
{menuseparator}
  {menu}Tools
    {compound-menuitem:index|caption=Pages}
    {menuseparator}
    {compound-menuitem:favourite|caption=Make Favorite}
    {compound-menuitem:watch|caption=Watch this Page}
    {menuseparator}
    {compound-menuitem:exportPDF|caption=Export to PDF}
    {compound-menuitem:exportWord|caption=Export to Word}
  {menu}
{menuseparator}
{menu}View
{compound-menuitem:wikiPage|space=EMPDIR|page=Employee Directory|caption=Employee Directory}
    {menuseparator}
    {compound-menuitem:index|caption=Pages}
    {compound-menuitem:news|caption=News}
    {compound-menuitem:labels|caption=Labels}
    {compound-menuitem:pageattachments|caption=Attachments (%count%) }
    {compound-menuitem:space-socialbookmarks|caption=Bookmarks}
 {menuseparator}
     {compound-menuitem:information|caption=Page Info & History}
{menuseparator}
  {compound-menuitem:viewSource|icon=book_open2|caption=View Wiki Markup|target=_blank}
{menuseparator}
    {compound-menuitem:mail|caption=Mail}
    {compound-menuitem:advanced|caption=Advanced}
    {compound-menuitem:activity|caption=Activity}
    {menuseparator}
        {compound-menuitem:dashboard|caption=Dashboard}
  {menu}{menubar}{td}{tr}{table}
  • No labels

5 Comments

  1. Unfortunatley the problem isnt with your markup, configuration or even builder but with IE itself! There are in fact two issues here:

    1. If you attempt to modify the DOM before the page has finished loading then IE will crash, IIRC IE6 will crash completely (the window will just disappear in a puff of exceptions) wheras IE7 will handle the problem 'gracefully' and show you a page stating that it has been unable to load the page ... according to microsoft they have fixed this problem in IE8

    2. IE's javascript engine is incredibly slow, and I dont just mean in comparison to the modern JS engines in use by FF3, Chrome & WebKit, it is achingly slow in comparison to outdated alt-browsers as well.

    There are a couple of things you can do to help poor old IE cope with the pretty basic javascript used in hmenu, both of these take the form of cutting down on the amount of work it needs to do on startup.

    1. Switch on 'lazy instantiation' - this means that only the top-level is rendered on page load, the sub-menus are then rendered as/when they are needed

    2. Switch off the use of icons in the menu - straightforward reduction in the amount of work IE needs to do.

    Unfortunatley neither of these will get around the fact that IE will implode if you try to modify the dom before the page finishes loading, however that is unfortunatley the nature of the beast.

    We will be moving to using a jQuery based menu in the next couple of months, however that still wont get around the limitations imposed by IE and the DOM ... unfortunatley if you are stuck with IE then you are stuck with all the limitations that go with it.

    1. Unknown User (jamie.zabel)

      Good to know, but any thought as to why it works perfectly in some user's IE7 and in this group of IE7 users it doesn't? It is consistent, their browsers are never any faster and in those whose browsers work it does not ever appear to lag.

      Also - trying to find where lazy instantiation is found - is it a setting in Confluence or IE? I looked on the Menu tab and the Options tab in Manage Builder Layouts in Confluence with no luck - silly question, but I'm missing it (smile)!
      Thanks for the quick response, btw!

      1. Ooops, sorry ... In the menu tab of your layout it is called 'Display menus as quickly as possible' ... I rarely look at the outer skin, internal to the code it's called 'lazy', hence me calling it by the wrong name.

        As to why it is slower for some users than others, that could be down to their local machine - it could be that their hardware isnt as fast, not as much memory, or their machine may have more malware running on it than others (you are using IE after all) ... to give any kind of accurate answer I would need to be able to sit in front of the machine (possibly through webex) and have a play with it.

        One other thing you can do to speed things up is to reduce the size of your menus as much as possible - the default builder menus include loads of options that arent nessecarily all that much use most of the time. They are included so that all of the features linked to are easily accessible by default, however for most applictions you dont need all of them!

        For example the layout used on this site doesnt use the view/edit menus at all, we have just included those options that we know we regularly need, and when we need to get at an option that isnt in the main layout we just append layout=default to the url and display the page using the DEFAULT layout (big grin)

        1. Unknown User (jamie.zabel)

          Would it be possible to setup a webex? We have tried everything we can think of, and still have slowness. I tested the Demonstration site with the Adaptavist theme applied, and the menus there are slow on those machines as well. Let me know what information you need from me if it's possible to setup a webex, and I'll get it to you!

          1. Sure, please create an issue in the BSUP project on tracker.adaptavist.com and we will get that setup for you.