ThePsion5 Posted October 31, 2005 Share Posted October 31, 2005 Hi,I'm creating a piece of javascript code designed to implement a simple tabbed web interface that uses a basic cookie to record the last tab visited. I'm familiar with programming languages in general, but I'm new to javascript and i've been encountering a perplexing error that seems to only occur with Firefox.Initially loading the page works well in IE and Firefox, but for some reason the code breaks upon some (but not all) subsequent loads in firefox. As far as I can tell, it has something to do with the onLoad function, specifically, it seems like Firefox does not call the onLoad function every time the refresh button is pressed, or only calls at certain intervals (like when i hit the refresh button 5 seconds after the last time i hit it. Is there something i'm missing? Thanks!-SeanEdit: The alert boxes are for debugging purposes.Here's my JavaScript code: function checkCookie(){ //Retrieve the cookie tabCookie = getCookie('tabCookie') //If it exists if (tabCookie!=null) { //Execute the display tabs function with the cookie's information displayTabs(tabCookie) } else { //Otherwise, make the cookie setCookie('tabCookie',tabCookie) displayTabs("immenu") }} function displayTabs(activeTab){ var tabArray = new Array("immenu","semmenu","seamenu"); var thisTab for (i = 0;i < tabArray.length; i++) { //Iterate through the tab array thisTab = document.getElementById(tabArray[i]) //Set each tab to not display alert(document.getElementById(tabArray[i]) + " should equal " + thisTab); thisTab.style.display = "none"; } if(activeTab == null) { //If the active tab is null, display a default document.getElementById("immenu").style.display = "inline"; } else { //Otherwise, display the appropriate tag document.getElementById(activeTab).style.display = "inline"; }} And Here's the relevant HTML: <script src="../JavaScripts/tabCookie.js"></script></HEAD><BODY onload="checkCookie();"> Link to comment Share on other sites More sharing options...
scott100 Posted October 31, 2005 Share Posted October 31, 2005 Hey, i wrote a simple test to see if firefox has problems with onload and it seems to be ok, the counter adds by one each time refresh is hit so i don't know if this helps you out any?--------------------------------------<head><script>function checkrefresh(){ var val=document.getElementById('one').value; val -=1; val +=2; document.getElementById('one').value=val;}</script></head><body onload="checkrefresh();"><input style="border:white" type="text" value="0" id="one" /></body> Link to comment Share on other sites More sharing options...
Philosopher's Ghost Posted November 2, 2005 Share Posted November 2, 2005 could it be related to your firefox's cache? Perhaps firefox is refreshing the page only under certain circumstances (i.e. every N loads of the page) Link to comment Share on other sites More sharing options...
ThePsion5 Posted November 2, 2005 Author Share Posted November 2, 2005 Well, I've done some tests and found that it only happens on my page, which means some part of my javaScript is preventing the page from reloading properly. I have no idea what, however.Is someone willing to take a look at my entire javascript code? It's not that long, but I'd feel like an arse posting the entire thing on here and making people read through it. Link to comment Share on other sites More sharing options...
hacknsack Posted November 2, 2005 Share Posted November 2, 2005 Not to worry. We like code Post a temp url, or code we appreciate both.Thanks, Link to comment Share on other sites More sharing options...
ThePsion5 Posted November 2, 2005 Author Share Posted November 2, 2005 Actually, I found out what the problem is.In my HTML file, I was using placeholders for images that referenced a non-existant file. When firefox tries to read these images, it apparently doesn't give up 2/3 times and although it loads the rest of the HTML, it never gets around to executing the javascript. I appreciate the attention though. Thanks! Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now