Javascript 加入“;文字HTML“;使用数据源中的数据创建HTML小部件?
在干舷中创建HTML小部件时,将显示以下文本: 可以是文本HTML,也可以是输出HTML的javascript 我知道我可以执行以下操作来返回带有数据的HTML,但是如果我想做更复杂的事情,我更喜欢使用文本HTML 返回包含数据的htmlJavascript 加入“;文字HTML“;使用数据源中的数据创建HTML小部件?,javascript,html,freeboard,Javascript,Html,Freeboard,在干舷中创建HTML小部件时,将显示以下文本: 可以是文本HTML,也可以是输出HTML的javascript 我知道我可以执行以下操作来返回带有数据的HTML,但是如果我想做更复杂的事情,我更喜欢使用文本HTML 返回包含数据的html <div style='color: red'> This is red text. </div> <div style='color: blue'> This is blue text. </div>
<div style='color: red'>
This is red text.
</div>
<div style='color: blue'>
This is blue text.
</div>
return“这是一个红色的时间戳:“+datasources[“DS”][“timestamp”]+”
无数据的文本html
<div style='color: red'>
This is red text.
</div>
<div style='color: blue'>
This is blue text.
</div>
我不知道干舷框架,但一个通用的解决方案是使用HTML5模板,如果您的浏览器支持要求允许的话
函数支持模板(){
返回document.createElement(“模板”)中的“内容”;
}
if(supportsTemplate()){
警报(“浏览器支持模板”);
}否则{
警报(“浏览器不支持模板”);
}
var template=document.querySelector(“#时间戳模板”);
var timestamp=template.content.querySelector('.timestamp');
timestamp.innerHTML=新日期().toLocaleString();
var clone=document.importNode(template.content,true);
var output=document.querySelector(“#output”);
输出.appendChild(克隆)代码>
这是默认的红色文本。
这是蓝色文本。
以下是如何将数据源插入HTML小部件的示例:
var LVL = datasources["GL"]["Level"];
return `<div style="width: 200px; height: 200px;background:rgb(242,203,56);"></style>
<svg width=200 height=`+LVL+`><rect width=100% height=100% fill=grey></svg>
</div>`;
var LVL=datasources[“GL”][“Level”];
返回`
`;
为那些不熟悉干舷的人添加了更多上下文