Solved

changing visiblity in NS6 and ie5

Posted on 2001-06-18
8
302 Views
Last Modified: 2012-06-27
im trying to change the visibility of divs in NS6 and ie5. I havent yet tested it in netscape but internet explorer keeps giving me an error when it reaches the  var id=getElementById(menu) part. menu is set by: onMouseOver=toggle("divName");
here's the script:
function toggle(menu)
{
if(document.layers)  
{  visible = "show";
   hidden = "hide";
  if(menu.visibility == "show")
  {
   menu.visibility = hidden;}
  else
  {menu.visibility = visible;}
}
if (document.getElementById)
{var id=document.getElementById(eval(menu));
alert(id);  
if (id.style.visibility == "visible")
{id.style.visibility = "hidden";}
 else
{id.style.visibility = "visible";}
}
thanks
0
Comment
Question by:alxr66
  • 3
  • 3
  • 2
8 Comments
 
LVL 1

Expert Comment

by:nivel
Comment Utility
SetVisible("mydiv", true);

function SetVisible(divname, showIt) {
  document.all(divname).style.visibility
  = (showIt?"block":"none");
}

This works only in ie5 though.
If you find out how to do it in ns6 then I'd like to know.
0
 
LVL 1

Expert Comment

by:nivel
Comment Utility
Ooops, I mixed things up a bit there.

style.display can be "block" or "hidden".
style.visibility can be "visible" or "hidden"

Sorry.
0
 
LVL 2

Expert Comment

by:lectos
Comment Utility
Instead of:

var id=document.getElementById(eval(menu));

Try:

var id=document.getElementById(menu);

You don't need the eval() in the way you are using the functions.  It's probably what is causing the error.
0
 

Author Comment

by:alxr66
Comment Utility
no lectos, that doesn't help, in the alert(id); id is alerted as "null". and then ie says "object requiered" so its something else.
0
Free Trending Threat Insights Every Day

Enhance your security with threat intelligence from the web. Get trending threat insights on hackers, exploits, and suspicious IP addresses delivered to your inbox with our free Cyber Daily.

 

Author Comment

by:alxr66
Comment Utility
Nivel:

the reason your code doesn't work in NS6 is because netscape doesn't support  document.all you have to use getElementById which is also supported by ie5
0
 
LVL 2

Expert Comment

by:lectos
Comment Utility
I tried the above script out once I got home from work.  I fixed the {} problem from above and it works fine as far as I can tell.

function toggle(menu){
if(document.layers) {
  visible = "show";
  hidden = "hide";
 if(menu.visibility == "show"){ menu.visibility = hidden;}
 else {menu.visibility = visible;}
 }
 if (document.getElementById) {var id=document.getElementById(menu); }
alert(id);  
if (id.style.visibility == "visible"){id.style.visibility = "hidden";}
else {id.style.visibility = "visible";}
}


0
 
LVL 2

Accepted Solution

by:
lectos earned 50 total points
Comment Utility
Ooops, I meant

function toggle(menu){
if(document.layers) {
 visible = "show";
 hidden = "hide";
if(menu.visibility == "show"){ menu.visibility = hidden;}
else {menu.visibility = visible;}
}
if (document.getElementById) {
var id=document.getElementById(menu);
alert(id);  
if (id.style.visibility == "visible"){id.style.visibility = "hidden";}
else {id.style.visibility = "visible";}
}}

0
 

Author Comment

by:alxr66
Comment Utility
Thanx lectos, problem solved!
0

Featured Post

How your wiki can always stay up-to-date

Quip doubles as a “living” wiki and a project management tool that evolves with your organization. As you finish projects in Quip, the work remains, easily accessible to all team members, new and old.
- Increase transparency
- Onboard new hires faster
- Access from mobile/offline

Join & Write a Comment

In my daily work (mainly using ASP.net), I need to write a lot of JavaScript code. One of the most repetitive tasks I do are the jQuery Ajax calls. You know: (CODE) I don't know if for you it's the same, but for me is soooo tedious to write the …
This article demonstrates how to create a simple responsive confirmation dialog with Ok and Cancel buttons using HTML, CSS, jQuery and Promises
The viewer will learn the basics of jQuery, including how to invoke it on a web page. Reference your jQuery libraries: (CODE) Include your new external js/jQuery file: (CODE) Write your first lines of code to setup your site for jQuery.: (CODE)
The viewer will learn the basics of jQuery including how to code hide show and toggles. Reference your jQuery libraries: (CODE) Include your new external js/jQuery file: (CODE) Write your first lines of code to setup your site for jQuery…

772 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

14 Experts available now in Live!

Get 1:1 Help Now