


5 ways to interact with JavaScript and CSS that you may not know_javascript skills
As browsers continue to upgrade and improve, the boundaries between CSS and JavaScript are becoming increasingly blurred. Originally they were responsible for completely different functions, but in the end, they all belong to web front-end technologies, and they need to work closely with each other. We all have .js files and .css files in our web pages, but this does not mean that CSS and js are independent and cannot interact. You may not be aware of these five ways JavaScript and CSS can work together!
Use JavaScript to get the pseudo-element (pseudo-element) attribute
Everyone knows how to get the CSS style value of an element through its style attribute, but you can get the pseudo-element (pseudo-element) Is the property worth it? Yes, you can also access pseudo-elements in the page using JavaScript.
// Get the color value of .element:before
var color = window.getComputedStyle(
document.querySelector('.element'), ':before'
).getPropertyValue('color ');
// Get the content value of .element:before
var content = window.getComputedStyle(
document.querySelector('.element'), ':before'
).getPropertyValue('content');
See, I can access the content property value in the pseudo element. This is a very useful technique if you want to create a dynamic, stylish website!
classList API
Many JavaScript tool libraries have methods such as addClass, removeClass and toggleClass. In order to be compatible with old browsers, the methods used by these class libraries are to first search the className of the element, append and delete the class, and then update the className. In fact, there is a new API that provides methods to add, delete and reverse CSS class attributes, called classList:
myDiv.classList.add('myCssClass'); // Adds a class
myDiv.classList.remove ('myCssClass'); // Removes a class
myDiv.classList.toggle('myCssClass'); // Toggles a class
Most browsers classListAPI has been implemented for a long time, and it was finally implemented in IE10.
Add and delete style rules directly to the style sheet
We are all very familiar with using element.style.propertyName to modify styles. Using JavaScript can help us do this, but you know how to do it new Add or modify an existing CSS style rule? It's actually very simple.
function addCSSRule(sheet, selector, rules, index) {
if(sheet.insertRule) {
sheet.insertRule(selector "{" rules "}", index);
}
else {
sheet.addRule(selector, rules, index);
}
}
// Use it!
addCSSRule(document.styleSheets[0], "header", " float: left");
This method is usually used to create a new style rule, but if you want to modify an existing rule, you can also Do this.
Loading CSS files
Lazy loading of images, JSON, scripts, etc. is a good way to speed up page display. We can use JavaScript loaders such as curl.js to lazily load these external resources, but did you know that CSS style sheets can also be lazily loaded, and the callback function will notify you after the loading is successful.
curl(
[
"namespace/MyWidget",
"css!namespace/resources/MyWidget.css"
],
function(MyWidget) {
// You can operate on MyWidget
// There is no reference to this CSS file here because it is not needed;
// We just need it to have been loaded on the page
}
});< /span>
When all resources are loaded, the callback function will be triggered, and I can load it in the callback function. Very useful!
CSS Mouse Pointer Events
CSS Mouse Pointer Events The pointer-events property is very interesting. Its function is very similar to JavaScript. When you set this property to none, it can effectively prevent Disabling this element, you might say "so what?", but in fact, it disables any JavaScript events or callback functions on this element!
.disabled { pointer-events: none; }
Click this element, you You will find that any listeners you place on this element will not trigger any events. A fantastic feature, really - you no longer need to check whether a certain CSS class exists in order to prevent an event from being triggered.
These are 5 ways to interact with CSS and JavaScript that you may not have discovered yet. Do you have any new discoveries? Share it!

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 Chinese version
Chinese version, very easy to use

Zend Studio 13.0.1
Powerful PHP integrated development environment

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)

Hot Topics



Detailed explanation of JavaScript string replacement method and FAQ This article will explore two ways to replace string characters in JavaScript: internal JavaScript code and internal HTML for web pages. Replace string inside JavaScript code The most direct way is to use the replace() method: str = str.replace("find","replace"); This method replaces only the first match. To replace all matches, use a regular expression and add the global flag g: str = str.replace(/fi

So here you are, ready to learn all about this thing called AJAX. But, what exactly is it? The term AJAX refers to a loose grouping of technologies that are used to create dynamic, interactive web content. The term AJAX, originally coined by Jesse J

10 fun jQuery game plugins to make your website more attractive and enhance user stickiness! While Flash is still the best software for developing casual web games, jQuery can also create surprising effects, and while not comparable to pure action Flash games, in some cases you can also have unexpected fun in your browser. jQuery tic toe game The "Hello world" of game programming now has a jQuery version. Source code jQuery Crazy Word Composition Game This is a fill-in-the-blank game, and it can produce some weird results due to not knowing the context of the word. Source code jQuery mine sweeping game

Article discusses creating, publishing, and maintaining JavaScript libraries, focusing on planning, development, testing, documentation, and promotion strategies.

This tutorial demonstrates how to create a captivating parallax background effect using jQuery. We'll build a header banner with layered images that create a stunning visual depth. The updated plugin works with jQuery 1.6.4 and later. Download the

The article discusses strategies for optimizing JavaScript performance in browsers, focusing on reducing execution time and minimizing impact on page load speed.

Matter.js is a 2D rigid body physics engine written in JavaScript. This library can help you easily simulate 2D physics in your browser. It provides many features, such as the ability to create rigid bodies and assign physical properties such as mass, area, or density. You can also simulate different types of collisions and forces, such as gravity friction. Matter.js supports all mainstream browsers. Additionally, it is suitable for mobile devices as it detects touches and is responsive. All of these features make it worth your time to learn how to use the engine, as this makes it easy to create a physics-based 2D game or simulation. In this tutorial, I will cover the basics of this library, including its installation and usage, and provide a

This article demonstrates how to automatically refresh a div's content every 5 seconds using jQuery and AJAX. The example fetches and displays the latest blog posts from an RSS feed, along with the last refresh timestamp. A loading image is optiona
