使用 jQuery 编辑 CSS 变量的最简单方法是什么?
What is the simplest way to edit CSS variables with jQuery?
我已经能够使用 document.documentElement.style.setProperty("--text-color", "#333")
编辑 CSS 变量,但是,我无法使用 jQuery 重现它,.css()
原型似乎只是使用已知的 CSS 属性。
下面是上述 CSS 变量的示例 CSS。
:root {
--text-color: #888;
}
div {
color: var(--text-color);
}
截至 2017 年 3 月 16 日,已在 jQuery 3.2.0 and later 中提供对自定义属性的支持。没有计划将此功能反向移植到 2.x 或更早版本,因此如果您出于维护原因需要使用旧版本的 jQuery,则需要继续使用内置的 style
对象以访问您的自定义属性。
jQuery 尚不支持自定义属性。有一个 pull request 尚未审核(但根据最近的评论,似乎已安排在即将推出的版本中)。虽然优先级不是那么高,因为自定义属性仍然是一个相当新的功能,它们的性质使得既可以为本机支持它们的浏览器开发包装器,又可以在 JavaScript 中为不支持它们的浏览器重新实现它们, 和 测试该功能以确保一切正常而不破坏其他 jQuery 功能以及现有站点,这是一项艰巨的任务。
我已经能够使用 document.documentElement.style.setProperty("--text-color", "#333")
编辑 CSS 变量,但是,我无法使用 jQuery 重现它,.css()
原型似乎只是使用已知的 CSS 属性。
下面是上述 CSS 变量的示例 CSS。
:root {
--text-color: #888;
}
div {
color: var(--text-color);
}
截至 2017 年 3 月 16 日,已在 jQuery 3.2.0 and later 中提供对自定义属性的支持。没有计划将此功能反向移植到 2.x 或更早版本,因此如果您出于维护原因需要使用旧版本的 jQuery,则需要继续使用内置的 style
对象以访问您的自定义属性。
jQuery 尚不支持自定义属性。有一个 pull request 尚未审核(但根据最近的评论,似乎已安排在即将推出的版本中)。虽然优先级不是那么高,因为自定义属性仍然是一个相当新的功能,它们的性质使得既可以为本机支持它们的浏览器开发包装器,又可以在 JavaScript 中为不支持它们的浏览器重新实现它们, 和 测试该功能以确保一切正常而不破坏其他 jQuery 功能以及现有站点,这是一项艰巨的任务。