Làm cách nào để nhận và đặt thuộc tính tùy chỉnh CSS (các truy cập có var(…)
trong biểu định kiểu) bằng JavaScript (plain hoặc jQuery)?Truy cập thuộc tính tùy chỉnh CSS (còn gọi là biến CSS) thông qua JavaScript
Đây là thử không thành công của tôi: nhấp vào các nút thay đổi thường font-weight
tài sản, nhưng không phải là tùy chỉnh --mycolor
tài sản:
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.2.0/jquery.min.js"></script>
<style>
body {
--mycolor: yellow;
background-color: var(--mycolor);
}
</style>
</head>
<body>
<p>Let's try to make this text bold and the background red.</p>
<button onclick="plain_js()">Plain JS</button>
<button onclick="jQuery_()">jQuery</button>
<script>
function plain_js() {
document.body.style['font-weight'] = 'bold';
document.body.style['--mycolor'] = 'red';
};
function jQuery_() {
$('body').css('font-weight', 'bold');
$('body').css('--mycolor', 'red');
}
</script>
</body>
</html>
Có 'var' được hỗ trợ trong CSS không? –
@Gothdo Đúng vậy. https://developer.mozilla.org/en-US/docs/Web/CSS/Using_CSS_variables Nó vẫn là thử nghiệm tuy nhiên. Ngoài ra nó là mục đích không có nghĩa là cho những thứ mà bạn thay đổi vào thời gian chạy nhưng để bảo trì. Nếu bạn muốn những thứ bạn có thể thay đổi, hãy xem [attr] (https://developer.mozilla.org/en/docs/Web/CSS/attr) – ste2425
Biến CSS là một tính năng thử nghiệm ... Tôi không mong đợi họ sẽ có thể truy cập được qua JS. Tôi có thể sai ... Nhưng tại sao không chỉ sử dụng FireBug và mong đợi các yếu tố DOM, để tìm ra chính mình? – Connum