Reputation: 77
Hi I have a joomla site that is working perfectly in all browsers except IE.
When I view it in IE a lot of the CSS doesn't seem to be recognised. When I use the developer tool to view the html and css, there is a lot of different code compared to other browsers. For example there are a heap of extra div
IDs called slick-unique
. These are not visible in other browsers. I am wondering if there is a plugin that is creating these ID for IE. I havn't been able to find it though
Even the HTML structure looks different. There are divs
called rt-hidden
in IE but not in other browsers. I have a IE only style sheet and I have been trying to override or fix the positioning but nothing I do changes the site.
There is also this code attached to the divs in IE
function(b,g){var h=Element.Constructors[b];if(h){return h(g);}if(typeof b!="string"){return document.id(b).set(g);}if(!g){g={};}if(!(/^[\w-]+$/).test(b)){var e=Slick.parse(b).expressions[0][0];
b=(e.tag=="*")?"div":e.tag;if(e.id&&g.id==null){g.id=e.id;}var d=e.attributes;if(d){for(var a,f=0,c=d.length;f<c;f++){a=d[f];if(g[a.key]!=null){continue;
}if(a.value!=null&&a.operator=="="){g[a.key]=a.value;}else{if(!a.value&&!a.operator){g[a.key]=true;}}}}if(e.classList&&g["class"]==null){g["class"]=e.classList.join(" ");
}}return document.newElement(b,g);}
Any ideas?
I have narrowed it down to this bit of code in the index.php of the template:
<?php
$browser = $gantry->browser;
$gantry->displayHead();
$gantry->addStyles(array('template.css','joomla.css','overlays.css'));
if ($gantry->get('fixedheader') && $gantry->get('menu-type') != 'splicemenu') $gantry->addScript('rt-fixedheader.js');
if ($browser->platform != 'iphone')
$gantry->addInlineScript('window.addEvent("domready", function(){ new SmoothScroll(); });');
// if ($gantry->get('loadtransition') && isBrowserCapable()){
// $gantry->addScript('load-transition.js');
// $hidden = ' class="rt-hidden"';
// } else {
// $hidden = '';
// }
?>
If I delete that code and refresh the page, the page loads, no css obviously. Then if I put the above code back in and refresh the page, the page works fine, even when I refresh this page. But if i try to visit another page, it goes back to having all of the extra divs, and that function code above, even after dumping the cache and refreshing. So it seems there is some sort of cache happening with the javascript.
Also tried turning off all plugins but that didn't work.
Upvotes: 0
Views: 730
Reputation: 36
Double check you have the latest versions of Gantry and that the template is for the version of Joomla you are using.
Rockettheme regularly update their templates to keep up with changes in Joomla.
Upvotes: 1
Reputation: 9330
The theme appears to be a commercial template "Modulus" by Rockettheme you best bet would be to try their support forums for this sort of issue. We've found them to be very responsive in pin-pointing the cause of problems.
Having said that we've also found that 3rd party modules can often break RocketTheme's templates if they are not well written. I would try turning off the any non-RocketTheme extensions one by one and checking the site in IE after turning each one off. This way you may be able to find a conflict (if one exists).
Upvotes: 0