Reputation: 53
Like the title says. Works on chrome and firefox, just IE9 gives me this issue. It does work when I target frame directly (example.com/#target) I dont think it's a matter of the object not being loaded
setInterval("myFunc()",1);
function myFunc(){
if ($(shop).is(":target")) {
$('#nav').removeClass('nav').addClass('navopen');
$('#content').removeClass('content').addClass('contenthide');
$('.bgopen').removeClass('bgopen');
$('#shpbg').addClass('bgopen');
} else if ($(about).is(":target")) {
$('#nav').removeClass('nav').addClass('navopen');
$('#content').removeClass('content').addClass('contenthide');
$('.bgopen').removeClass('bgopen');
$('#abtbg').addClass('bgopen');
} else if ($(contact).is(":target")) {
$('#nav').removeClass('nav').addClass('navopen');
$('#content').removeClass('content').addClass('contenthide');
$('.bgopen').removeClass('bgopen');
$('#cntbg').addClass('bgopen');
} else if ($(blog).is(":target")) {
$('#nav').removeClass('nav').addClass('navopen');
$('#content').removeClass('content').addClass('contenthide');
$('.bgopen').removeClass('bgopen');
$('#extbg').addClass('bgopen');
} else if ($(collective).is(":target")) {
$('#nav').removeClass('nav').addClass('navopen');
$('#content').removeClass('content').addClass('contenthide');
$('.bgopen').removeClass('bgopen');
$('#colbg').addClass('bgopen');
} else if ($(main).is(":target")) {
$('#nav').removeClass('navopen').addClass('nav');
$('#content').removeClass('contenthide').addClass('content');
$('.bgopen').removeClass('bgopen');
$('#bgmain').addClass('bgopen');
} else if ($(pmt).is(":target")) {
$('#nav').removeClass('nav').addClass('navopen');
$('#content').removeClass('content').addClass('contenthide');
$('.bgopen').removeClass('bgopen');
$('#abtbg').addClass('bgopen');
}
else {
}}
I've tried wrapping it in window(load), document(ready) to no avail...
Upvotes: 3
Views: 651
Reputation: 74420
You should really refactoring your code!
The setting of an interval with delay of 1 ms is useless in your case and can only cause bugs as minimum for browser to call an interval callback function is over than this 1 ms.
Change your logic code and try with this instead:
setInterval(myFunc,100);
Upvotes: 1