Portability of nextElementSibling/nextSibling
I'm currently writing an accordion and running into the same problem as described in [nextSibling difference between IE and FF?][1] - specifically differences between Microsoft's nextSibling / nextElementSibling and that implemented by everyone else.

For various reasons, using jquery is not an option. Nor is getting all my MS users to upgrade to MSIE9

Currently I'm using the following code to work around the problem:

    // tr is a TR doc element at entry....
    while (nthRow--) {
         // for Chrome, FF tr=tr.nextElementSibling; for MSIE...tr=tr.nextSibling;
         tr=tr.nextElementSibling ? tr.nextElementSibling : tr=tr.nextSibling;
         if (!tr || tr.nodeName != "TR") {
                break;
         }
         tr.style.display="";
    }

Which seems to do what I expect in MSIE6, FF and Chrome - i.e. the nthRow TR elements below the initial TR are made visible (previously style.display="none").

But is this likely to have unexpected side effects? 

(I'm a bit of a newbie with Javascript ;)

  [1]: http://stackoverflow.com/questions/4578455/nextsibling-difference-between-ie-and-ff
Portability of nextElementSibling/nextSibling
===

I'm currently writing an accordion and running into the same problem as described in [nextSibling difference between IE and FF?][1] - specifically differences between Microsoft's nextSibling / nextElementSibling and that implemented by everyone else.

For various reasons, using jquery is not an option. Nor is getting all my MS users to upgrade to MSIE9

Currently I'm using the following code to work around the problem:

    // tr is a TR doc element at entry....
    while (nthRow--) {
         // for Chrome, FF tr=tr.nextElementSibling; for MSIE...tr=tr.nextSibling;
         tr=tr.nextElementSibling ? tr.nextElementSibling : tr=tr.nextSibling;
         if (!tr || tr.nodeName != "TR") {
                break;
         }
         tr.style.display="";
    }

Which seems to do what I expect in MSIE6, FF and Chrome - i.e. the nthRow TR elements below the initial TR are made visible (previously style.display="none").

But is this likely to have unexpected side effects? 

(I'm a bit of a newbie with Javascript ;)

  [1]: http://stackoverflow.com/questions/4578455/nextsibling-difference-between-ie-and-ff