JS中的CSS for vanilla Javascript类
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了JS中的CSS for vanilla Javascript类,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1500字,纯文字阅读大概需要3分钟。
内容图文
如果我像这样创建一个vanilla JS组件:
class TestComponent {
constructor(el) {
this.render(el);
}
render(el) {
var html = `
<div>
<p>Some dummy content</p>
</div>
`;
document.getElementById(el).innerHTML = html;
}
}
我可以在JS中添加CSS吗?
我的意思是:
const styles = {
backgroundColor: 'palevioletred',
color: 'papayawhip',
};
所以上面的渲染方法将如下所示:
render(el) {
var html = `
<div style={styles}>
<p>Some dummy content</p>
</div>
`;
document.getElementById(el).innerHTML = html;
}
是否可以在Angular / React等框架之外进行?
解决方法:
您正在将JS对象用于HTML(String).因此,您必须将对象转换为有效的HTML字符串:
const styles = {
// CSS key is `background-color` instead of `backgroundColor`
'background-color': 'palevioletred',
color: 'papayawhip',
}
render(el) {
// Loop every keys, and create an array contain every
// key:value
// join every items on array to create a single String.
var string_styles = Object.keys(styles).map(s => {
return s + ":" + styles[s]
}).join(';')
// Or
string_styles = JsToCss(styles)
var html = '<div style="' + string_styles + '">' +
'<p>Some dummy content</p>' +
'</div>';
document.getElementById(el).innerHTML = html;
}
// Decomposed function:
let JsToCss = (styles) => {
let keys = Object.keys(styles)
// keys = [ 'background-color', 'color']
let css_values = keys.map(key => {
return key + ":" + styles
})
// css_values = [
// 'background-color:palevioletred',
// 'color:papayawhip'
// ]
return css_values.join(';')
// return "background-color:palevioletred;color:papayawhip;"
}
代码未经测试,但这是个主意
内容总结
以上是互联网集市为您收集整理的JS中的CSS for vanilla Javascript类全部内容,希望文章能够帮你解决JS中的CSS for vanilla Javascript类所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。