Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 448283
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 12, 20262026-05-12T21:39:15+00:00 2026-05-12T21:39:15+00:00

I need to be able to have the next element / previous element to

  • 0

I need to be able to have the next element / previous element to change the background color with the current element. How do I do that. The element that I am working is TR, table row, and nextSibling, previousSibling doesn’t do the trick for me, don’t know why ?

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-12T21:39:16+00:00Added an answer on May 12, 2026 at 9:39 pm

    I think we have a case here of even the “good” browsers behaving in an extremely annoying way.

    Take for example my following table, where the HTML looks like the following:

    <table border="1">
        <thead>
        <tr id="header">
            <th>eng</th>
            <th>deu</th>
            <th>spa</th>
        </tr>
        </thead>
        <tbody>
        <tr id="row1">
            <td>one</td>
            <td>eins</td>
            <td>uno</td>
        </tr>
        <tr id="row2">
            <td>spoon</td>
            <td>der Löffel</td>
            <td>la cucharita</td>
        </tr>
        </tbody>
    </table>
    

    When I open this up in Firefox and go to the console and run the following snippets, notice the how nextSibling behaves:

    // My input command
    document.getElementById("row1").nextSibling;
    // Output from the console
    <TextNode textContent="\n ">
    

    I’ve read about this somewhere, and I forget exactly where (Quirksblog, or perhaps from a talk PPK did), so then I tried the following:

    // my input command
    document.getElementById("row1").nextSibling.nextSibling;
    // output from the console
    <tr id="row2">
    

    This is one of those moments where our wonderful standards compliant browsers do it (IMHO) absolutely wrong.

    To test, I decide to single line the HTML of my table, hence (hopefully it shows up all on one line):

    <table border="1"><thead><tr id="header"><th>eng</th><th>deu</th><th>spa</th></tr></thead><tbody><tr id="row1"><td>one</td><td>eins</td><td>uno</td></tr><tr id="row2"><td>spoon</td><td>der Löffel</td><td>la cucharita</td></tr></tbody></table>
    

    And run my test again:

    // Hmmm, does nextSibling work _as expected_ now?
    document.getElementById("row1").nextSibling;
    // yep
    <tr id="row2">
    

    Benice, your idea was correct, but you got bit by what I like to think of as an implementation oversight on the browser’s part. I recommend being very careful with HTML DOM relationships cross-browser. Most of them work as expected, but sometimes they don’t.

    Ahh, found an article about this after all: https://developer.mozilla.org/en/Whitespace_in_the_DOM

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I need to be able to take an arbitrary text input that may have
I need to be able to display data that I have in 15 minute
I have an app that normal users need to be able to run, but
I have a program that I need to be able to search a file
I need to be able to have a SelectionBoxItemTemplate for my ComboBox, but am
In the ASP.Net application I am writing I need to be able to have
Consider this page @ http://www.bloodbone.ws/screwed.html I need to be able to have the a.grow
I have a situation where I need to be able to load assemblies in
I have a business case whereby I need to be able to specify my
I have a file format I need to be able to show in explorer

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.