Hướng dẫn how can javascript interact with css? - javascript có thể tương tác với css như thế nào?
CSS và JavaScript: & NBSP; Các dòng dường như bị mờ bởi mỗi bản phát hành trình duyệt. & nbsp; họ luôn thực hiện một công việc rất khác nhau nhưng cuối cùng, cả hai đều là công nghệ mặt trước nên họ cần phải làm việc chặt chẽ. & nbsp; chúng tôi có các tệp .js của chúng tôi và .css của chúng tôi, nhưng điều đó không có nghĩa là CSS và JS không thể tương tác chặt chẽ hơn so với các khung JavaScript cơ bản sẽ cho phép. & nbsp; Đây là năm cách mà JavaScript và CSS làm việc cùng nhau mà bạn có thể không biết! Show
Nhận các thuộc tính giả giả với & NBSP; JavaScriptChúng tôi biết rằng chúng tôi có thể nhận được các giá trị kiểu CSS cơ bản cho một phần tử với thuộc tính // 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'); Bạn có thể thấy cách tôi truy cập giá trị thuộc tính nội dung trong bài đăng trên blog của tôi về phát hiện trạng thái thiết bị. & nbsp; Vô cùng hữu ích nếu bạn đang tìm cách tạo các trang web năng động, độc đáo! API danh sách lớpTất cả chúng ta đã sử dụng các phương pháp myDiv.classList.add('myCssClass'); // Adds a class myDiv.classList.remove('myCssClass'); // Removes a class myDiv.classList.toggle('myCssClass'); // Toggles a class myDiv.classList.add('myCssClass'); // Adds a class myDiv.classList.remove('myCssClass'); // Removes a class myDiv.classList.toggle('myCssClass'); // Toggles a class1 đã được triển khai trong một thời gian dài trong hầu hết các trình duyệt, nhưng API này nhấn IE tại phiên bản 10. Thêm và xóa các quy tắc trực tiếp vào các kiểu dángTất cả chúng ta đều thành thạo trong việc sửa đổi các kiểu thông qua phương thức myDiv.classList.add('myCssClass'); // Adds a class myDiv.classList.remove('myCssClass'); // Removes a class myDiv.classList.toggle('myCssClass'); // Toggles a class2 và chúng tôi đã sử dụng bộ công cụ JavaScript để làm điều đó, nhưng bạn có biết bạn thực sự có thể đọc và viết các quy tắc trong các bảng kiểu mới và hiện có không? & nbsp; API thực sự khá đơn giản! 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"); Trường hợp sử dụng phổ biến nhất là tạo một bảng kiểu mới, nhưng nếu bạn muốn sửa đổi bảng kiểu hiện có, hãy truy cập nó. Tải tệp CSS với trình tảiCác tài nguyên tải lười biếng như hình ảnh, JSON và tập lệnh là một cách tuyệt vời để giảm thời gian tải. & nbsp; chúng ta có thể tải các tài nguyên bên ngoài đó với các trình tải JavaScript như curl.js, nhưng bạn có biết bạn có thể lười biếng tải các kiểu dáng và nhận được thông báo đó trong cùng một cuộc gọi lại không? curl( [ "namespace/MyWidget", "css!namespace/resources/MyWidget.css" ], function(MyWidget) { // Do something with MyWidget // The CSS reference isn't in the signature because we don't care about it; // we just care that it is now in the page } }); Blog này lười biếng tải Prismjs, cú pháp highlighter, dựa trên sự hiện diện của & nbsp; ____ 13 yếu tố. & nbsp; Một khi tất cả các tài nguyên được tải, bao gồm cả bảng kiểu, tôi có thể bắn ra một cuộc gọi lại. & nbsp; hữu ích! CSS myDiv.classList.add('myCssClass'); // Adds a class myDiv.classList.remove('myCssClass'); // Removes a class myDiv.classList.toggle('myCssClass'); // Toggles a class 4Thuộc tính myDiv.classList.add('myCssClass'); // Adds a class myDiv.classList.remove('myCssClass'); // Removes a class myDiv.classList.toggle('myCssClass'); // Toggles a class4 của CSS rất thú vị ở chỗ nó gần như hoạt động theo cách giống như JavaScript, vô hiệu hóa một phần tử khi giá trị không có nhưng nếu không thì cho phép phần tử hoạt động trên mỗi thông thường khi giá trị không & nbsp; ________ 16. & nbsp; bạn có thể đang nói "Vậy thì sao ?!" Nhưng các sự kiện con trỏ thậm chí ngăn các sự kiện JavaScript bắn! .disabled { pointer-events: none; } Nhấp vào phần tử đó và bất kỳ cuộc gọi lại myDiv.classList.add('myCssClass'); // Adds a class myDiv.classList.remove('myCssClass'); // Removes a class myDiv.classList.toggle('myCssClass'); // Toggles a class7 nào bạn đã đặt trên phần tử sẽ không bắn. & nbsp; một tài sản hoàn hảo, thực sự - bạn không cần phải kiểm tra className trước khi bạn quyết định có bắn một cái gì đó dựa trên sự hiện diện của lớp hay không.Đó chỉ là năm cách mà CSS và JavaScript tương tác mà bạn không luôn nghĩ đến. & nbsp; có nhiều ý tưởng hơn? & nbsp; Hãy chia sẻ chúng!
Các tính năng gần đây
Những bản demo đáng kinh ngạc
JavaScript có thể truy cập CSS không?Bạn có thể nhận các giá trị CSS trong JavaScript thông qua hai phương thức: thuộc tính kiểu.GetComputedStyle. The style property. getComputedStyle .
JavaScript có thể được sử dụng để thay đổi CSS không?Đặt các kiểu riêng lẻ trực tiếp từ JavaScript là một trong những kịch bản phổ biến nhất khi xử lý các kiểu CSS động.Cách này cho phép bạn thay đổi kiểu CSS cho một hoặc nhiều yếu tố có trong DOM.Tất cả bạn phải làm là: Truy vấn phần tử có trong DOM.. This way allows you to change the CSS styles for one or multiple elements present in the DOM. All you have to do is: Query the element present in the DOM. |