Still celebrating National IT Professionals Day with 3 months of free Premium Membership. Use Code ITDAY17

x
?
Solved

style.display = "table-row" - IE6 error

Posted on 2007-03-27
3
Medium Priority
?
2,918 Views
Last Modified: 2009-11-24
Hello,

This does not work with IE6 (it gives an error)
         new_value = "table-row";
         document.getElementById("pageHeader").style.display = new_value;

And looks very poorly formated in FF:
         new_value = "block";
         document.getElementById("pageHeader").style.display = new_value;

         
Any ideas?
0
Comment
Question by:hankknight
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
3 Comments
 
LVL 7

Assisted Solution

by:Yury Merezhkov
Yury Merezhkov earned 400 total points
ID: 18801952
I use this function to show/hide TR. Check it out. Works nicely for me in both FF and IE 6/7:

function showHide() {
      var tr = document.getElementById("Your_Element_Id_Here");
      var trVisible;
      
      if(navigator.appName.indexOf("Microsoft") > -1)
            trVisible = "block"
      else
            trVisible = "table-row"
      
      if (tr.style.display == "none")
            tr.style.display = trVisible
      else
            tr.style.display = "none"
}
0
 
LVL 28

Accepted Solution

by:
TName earned 1600 total points
ID: 18806573
Why don't you just use  ''  (an empty string) instead of "block" or "table-row"? Then each browser will reset style.display to it's defaulr value (which may be "block" or "table-row" depending on the browser engine).
So simply toggle the display value between   'none'   and   ''.
0
 

Expert Comment

by:jaanise
ID: 22754538
An empty string may not work if "none" is set for display property in a CSS style sheet.

Setting display to "" will reset only element's inline style display value. If some CSS rule applies to the element, then resetting the inline value will enable that CSS rule. If it was defined so that the element is not to be displayed, then switching between 'none' and '' will give no result (the element will remain hidden).
0

Featured Post

Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

In Part 1 (http://www.experts-exchange.com/Programming/Languages/Scripting/JavaScript/A_7849-Hex-Maze.html) we covered the hexagonal maze basics -- how the cells are represented in a JavaScript array and how the maze is displayed.  In this part, we'…
Boost your ability to deliver ambitious and competitive web apps by choosing the right JavaScript framework to best suit your project’s needs.
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…

670 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