首頁 web前端 js教程 JavaScript和CSS互動的方法總結_javascript技巧

JavaScript和CSS互動的方法總結_javascript技巧

May 16, 2016 pm 04:29 PM
css javascript 互動

用JavaScript取得偽元素(pseudo-element)屬性

大家都知道如何透過一個元素的style屬性來取得它的CSS樣式值,但能取得偽元素(pseudo-element)的屬性值嗎?可以的,使用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');

看見了嗎,我能存取偽元素裡的content屬性值。如果你想創建一個動態的,風格別緻的網站,這是一種非常有用的技術!

classList API

很多的JavaScript工具庫裡都有addClass,removeClass和toggleClass等方法。為了對老式瀏覽器的相容,這些類別庫所採用的方法都是先搜尋元素的className,追加並刪除這個類,然後更新className。其實有一個新型的API提供了添加,刪除和反轉CSS類別屬性的方法,叫做classList:

複製程式碼 程式碼如下:

myDiv.classList.add('myCssClass'); // Adds a class
myDiv.classList.remove('myCssClass'); // Removes a class
myDiv.classList.toggle('myCssClass'); // Toggles a class

大多數的瀏覽器裡很早就實現了classListAPI,而且最終IE10裡也實現了它。

直接對樣式表進行新增和刪除樣式規則

我們都非常熟悉使用element.style.propertyName來修改樣式,使用JavaScript能幫助我們做到這些,但你知道如何新增或修一個現有的CSS樣式規則嗎?其實非常的簡單。

複製程式碼 程式碼如下:

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");

這種方法通常是用來建立一個新的樣式規則,但如果你想修改一個現有的規則,也可以這樣做。

載入CSS檔案

延遲載入圖片、JSON、腳本等是用來加快頁面顯示速度的好方法。我們可以使用curl.js等這樣JavaScript載入器來延遲載入這些外部資源,可你知道CSS樣式表也可以延遲載入嗎,而且在載入成功後回呼函數會給予通知。

複製程式碼 程式碼如下:

curl(
[
"namespace/MyWidget",
"css!namespace/resources/MyWidget.css"
],
function(MyWidget) {
// 你可以對MyWidget進行操作
// 這裡沒有對這個CSS檔案引用,因為不需要;
// 我們只需要它已經載入到頁面上了
}
});

本網站使用的PrismJS語法高亮腳本就是延遲載入的。當所有的資源都載入後,回呼函數就會觸發,我可在回呼函數裡載入它。非常有用!

CSS老鼠指標事件

CSS滑鼠指標事件pointer-events屬性非常的有趣,它的功效非常像JavaScript,當你把這個屬性設定為none時,它能有效的阻止禁止這個元素,你也許會說「這又如何? ”,但事實上,它是禁止了這個元素上的任何JavaScript事件或回調函數!

複製程式碼 程式碼如下:

.disabled { pointer-events: none; }

點擊這個元素,你會發現任何你放置在這個元素上的監聽器都不會觸發任何事件。一個神奇的功能,真的-你不在需要為了防止某個事件會被觸發而去檢查某個css類別是否存在。

以上就是個人總結的5種javascript和CSS進行互動的方法,大家如果有更好的,請告之,本文將持續更新

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

熱門話題

Java教學
1664
14
CakePHP 教程
1423
52
Laravel 教程
1317
25
PHP教程
1268
29
C# 教程
1246
24
vue中怎麼用bootstrap vue中怎麼用bootstrap Apr 07, 2025 pm 11:33 PM

在 Vue.js 中使用 Bootstrap 分為五個步驟:安裝 Bootstrap。在 main.js 中導入 Bootstrap。直接在模板中使用 Bootstrap 組件。可選:自定義樣式。可選:使用插件。

了解HTML,CSS和JavaScript:初學者指南 了解HTML,CSS和JavaScript:初學者指南 Apr 12, 2025 am 12:02 AM

WebDevelovermentReliesonHtml,CSS和JavaScript:1)HTMLStructuresContent,2)CSSStyleSIT和3)JavaScriptAddSstractivity,形成thebasisofmodernWebemodernWebExexperiences。

HTML,CSS和JavaScript的角色:核心職責 HTML,CSS和JavaScript的角色:核心職責 Apr 08, 2025 pm 07:05 PM

HTML定義網頁結構,CSS負責樣式和佈局,JavaScript賦予動態交互。三者在網頁開發中各司其職,共同構建豐富多彩的網站。

bootstrap怎麼插入圖片 bootstrap怎麼插入圖片 Apr 07, 2025 pm 03:30 PM

在 Bootstrap 中插入圖片有以下幾種方法:直接插入圖片,使用 HTML 的 img 標籤。使用 Bootstrap 圖像組件,可以提供響應式圖片和更多樣式。設置圖片大小,使用 img-fluid 類可以使圖片自適應。設置邊框,使用 img-bordered 類。設置圓角,使用 img-rounded 類。設置陰影,使用 shadow 類。調整圖片大小和位置,使用 CSS 樣式。使用背景圖片,使用 background-image CSS 屬性。

bootstrap怎麼寫分割線 bootstrap怎麼寫分割線 Apr 07, 2025 pm 03:12 PM

創建 Bootstrap 分割線有兩種方法:使用 標籤,可創建水平分割線。使用 CSS border 屬性,可創建自定義樣式的分割線。

bootstrap怎麼設置框架 bootstrap怎麼設置框架 Apr 07, 2025 pm 03:27 PM

要設置 Bootstrap 框架,需要按照以下步驟:1. 通過 CDN 引用 Bootstrap 文件;2. 下載文件並將其託管在自己的服務器上;3. 在 HTML 中包含 Bootstrap 文件;4. 根據需要編譯 Sass/Less;5. 導入定製文件(可選)。設置完成後,即可使用 Bootstrap 的網格系統、組件和样式創建響應式網站和應用程序。

bootstrap怎麼調整大小 bootstrap怎麼調整大小 Apr 07, 2025 pm 03:18 PM

要調整 Bootstrap 中元素大小,可以使用尺寸類,具體包括:調整寬度:.col-、.w-、.mw-調整高度:.h-、.min-h-、.max-h-

bootstrap按鈕怎麼用 bootstrap按鈕怎麼用 Apr 07, 2025 pm 03:09 PM

如何使用 Bootstrap 按鈕?引入 Bootstrap CSS創建按鈕元素並添加 Bootstrap 按鈕類添加按鈕文本

See all articles