Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

176
Views
Can I change the class of a link from one class to another using javascript?

I've been attempting to use the js .toggle feature to change the class of a link to turn it from one colour to another onclick.

<html>

<style>

.the-button-inactive {
    display: inline-block;
    height: 20px;
    width: 20px;
    border-radius: 10px;
    background-color: black;
}
.the-button-active {
    display: inline-block;
    height: 20px;
    width: 20px;
    border-radius: 10px;
    background-color: blue;
}

</style>

<body>

   <div class="the-button-container">

                <a href="#the-image-1" id="the-image-1-id" onclick="myFunction()" class="the-button-inactive"></a>

  </div>
  
  <script>
    function myFunction() {
   var element = document.getElementByID("the-image-1-id");
   element.classList.toggle("the-button-active");
}
</script>
  

</body>

</html>

The link already has the "the-button-inactive" class and I'm trying to switch it to "the-button-active" class on click using the above script though I'm not sure why it's not working. The ultimate goal would be to get the link to change colour from black to blue when clicked and then from blue to black again when another link is clicked.

So far, nothing happens when the link is clicked.

I was able to achieve this previously using buttons instead of links, but have decided to try to tackle this issue using links now.

Here is the jsfiddle I'm using to test this script: https://jsfiddle.net/tqr2h4pb/

about 4 years ago · Juan Pablo Isaza
2 answers
Answer question

0

you had a typo in your code. Change getElementByID to getElementById and it works fine.

you should always check the console for debugging it says Uncaught TypeError: document.getElementByID is not a function"

about 4 years ago · Juan Pablo Isaza Report

0

The toggle method won't affect the classes that already exist, which is why .the-button-active is persisting.

HTML:

<a href="#the-image-1" id="the-image-1-id" onclick="myFunction()" class="the-button-inactive">click</a>

Javascript:

function myFunction() {
  const element = document.querySelector("#the-image-1-id")
  element.classList.toggle("the-button-active")
  element.classList.toggle("the-button-inactive");
}

This worked for me to toggle inactive and active states

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!