Java script Training , study and exam guide
1 Introduction to JavaScript
1.1 What is JavaScript?
1.2 History of JavaScript
1.3 JavaScript vs Java
1.4 JavaScript in Web Development
1.5 Setting Up the Environment
2 JavaScript Basics
2.1 Variables and Data Types
2.1 1 Declaring Variables
2.1 2 Primitive Data Types
2.1 3 Non-Primitive Data Types
2.2 Operators
2.2 1 Arithmetic Operators
2.2 2 Comparison Operators
2.2 3 Logical Operators
2.2 4 Assignment Operators
2.3 Control Structures
2.3 1 If Statements
2.3 2 Switch Statements
2.3 3 Loops (for, while, do-while)
2.4 Functions
2.4 1 Defining Functions
2.4 2 Function Expressions
2.4 3 Arrow Functions
2.4 4 Scope and Closures
3 JavaScript in the Browser
3.1 The Document Object Model (DOM)
3.1 1 Accessing DOM Elements
3.1 2 Modifying DOM Elements
3.1 3 Event Handling
3.2 Browser Object Model (BOM)
3.2 1 Window Object
3.2 2 Navigator Object
3.2 3 Screen Object
3.2 4 History Object
3.2 5 Location Object
3.3 Manipulating CSS with JavaScript
3.3 1 Changing Styles
3.3 2 Adding and Removing Classes
4 Advanced JavaScript Concepts
4.1 Object-Oriented Programming (OOP)
4.1 1 Objects and Properties
4.1 2 Constructors and Prototypes
4.1 3 Inheritance
4.1 4 Encapsulation
4.2 Error Handling
4.2 1 Try-Catch Blocks
4.2 2 Throwing Errors
4.2 3 Custom Errors
4.3 Asynchronous JavaScript
4.3 1 Callbacks
4.3 2 Promises
4.3 3 AsyncAwait
4.4 Modules and Imports
4.4 1 Exporting and Importing Modules
4.4 2 Default Exports
4.4 3 Named Exports
5 JavaScript Libraries and Frameworks
5.1 Introduction to Libraries and Frameworks
5.2 Popular JavaScript Libraries
5.2 1 jQuery
5.2 2 Lodash
5.3 Popular JavaScript Frameworks
5.3 1 React
5.3 2 Angular
5.3 3 Vue js
6 JavaScript Tools and Best Practices
6.1 Version Control with Git
6.2 Package Managers (npm, Yarn)
6.3 Task Runners (Grunt, Gulp)
6.4 Code Quality Tools (ESLint, JSLint)
6.5 Debugging Techniques
6.5 1 Using Browser Developer Tools
6.5 2 Logging and Tracing
6.6 Performance Optimization
6.6 1 Minification and Bundling
6.6 2 Lazy Loading
6.6 3 Caching Strategies
7 JavaScript and APIs
7.1 Introduction to APIs
7.2 Fetch API
7.3 XMLHttpRequest (XHR)
7.4 Working with RESTful APIs
7.5 JSON and Data Manipulation
8 JavaScript and Security
8.1 Common Security Threats
8.2 Cross-Site Scripting (XSS)
8.3 Cross-Site Request Forgery (CSRF)
8.4 Secure Coding Practices
9 JavaScript and Testing
9.1 Introduction to Testing
9.2 Unit Testing
9.3 Integration Testing
9.4 End-to-End Testing
9.5 Popular Testing Frameworks (Jest, Mocha, Jasmine)
10 Final Project and Exam Preparation
10.1 Project Guidelines
10.2 Exam Format and Structure
10.3 Study Tips and Resources
10.4 Practice Questions and Mock Exams
3 3 1 Changing Styles Explained

Changing Styles in JavaScript

Key Concepts

Changing styles in JavaScript involves several key concepts:

Accessing and Modifying Inline Styles

Inline styles are directly applied to an HTML element using the style attribute. JavaScript allows you to access and modify these styles using the style property of the element.

<div id="myDiv" style="color: blue; font-size: 16px;">Hello, World!</div>
<script>
    let element = document.getElementById("myDiv");
    element.style.color = "red";
    element.style.fontSize = "20px";
</script>
    

Using the Style Property

The style property is an object that contains all the inline styles of an element. You can access and modify these styles using JavaScript.

<div id="myDiv">Hello, World!</div>
<script>
    let element = document.getElementById("myDiv");
    element.style.backgroundColor = "yellow";
    element.style.padding = "10px";
</script>
    

Modifying CSS Classes

Instead of modifying individual styles, you can change the CSS class of an element using the className or classList property. This allows you to apply a set of styles defined in your CSS file.

<style>
    .highlight {
        background-color: yellow;
        color: red;
    }
</style>
<div id="myDiv">Hello, World!</div>
<script>
    let element = document.getElementById("myDiv");
    element.className = "highlight";
    // Alternatively, using classList
    element.classList.add("highlight");
</script>
    

Computed Styles

Computed styles are the final styles applied to an element after all CSS rules have been evaluated. You can access computed styles using the window.getComputedStyle method.

<div id="myDiv" style="color: blue;">Hello, World!</div>
<script>
    let element = document.getElementById("myDiv");
    let computedStyle = window.getComputedStyle(element);
    console.log(computedStyle.color); // Output: rgb(0, 0, 255)
</script>
    

Examples and Analogies

Imagine changing styles as dressing up a doll:

Understanding how to change styles in JavaScript is crucial for creating dynamic and responsive web applications. By mastering these concepts, you can create visually appealing and interactive user experiences.