是否有任何类型的方法可以通过 node.js 在 HTML 服务器的脚本中调用函数?
Is there any type of way to call a function inside a script in a HTML server from with node.js?
抱歉我缺乏技术语言!
所以,我想做的是在 OBS(Open Broadcaster Software)中使用的 twitch 订阅计数器,我制作了实际计算 node.js 中的订阅者的部分(我实际上有它们保存文本文件中发生的订阅数)。我缺少的是将在 OBS 上显示的部分,即我使用 html 和 CSS 制作的实际图形计数器。我这样做是为了当我 运行 node.js 文件时,它使用带有 html 的 http.createServer().listen(port)
函数创建本地 Web 服务器(localhost:etc)。
问题是我需要调用一个函数 (setValue()
),它位于 HTML 文件中的 java 脚本脚本中,它会更改计数器状态(百分比和填充栏).. .有什么办法吗?
html脚本代码:
<script type="text/javascript">
let reader = new FileReader();
class ProgressBar {
constructor(element, initialValue = 0) {
this.valueElem = element.querySelector('.progress-bar-value');
this.fillElem = element.querySelector('.progress-bar-fill');
this.setValue(initialValue);
}
setValue(newValue) {
if(newValue < 0){
newValue = 0;
}
if(newValue > 100){
newValue = 100;
}
this.value = newValue
this.update();
}
update() {
const percentage = this.value + '%';
this.fillElem.style.width = percentage;
this.valueElem.textContent = percentage;
}
}
var pb1 = new ProgressBar(document.querySelector('.progress-bar'),50);
</script>
您可以使用 WebSockets
WebSockets 是 Web 应用程序中 HTTP 通信的替代方法。
它们在客户端和服务器之间提供长期的双向通信通道。
抱歉我缺乏技术语言!
所以,我想做的是在 OBS(Open Broadcaster Software)中使用的 twitch 订阅计数器,我制作了实际计算 node.js 中的订阅者的部分(我实际上有它们保存文本文件中发生的订阅数)。我缺少的是将在 OBS 上显示的部分,即我使用 html 和 CSS 制作的实际图形计数器。我这样做是为了当我 运行 node.js 文件时,它使用带有 html 的 http.createServer().listen(port)
函数创建本地 Web 服务器(localhost:etc)。
问题是我需要调用一个函数 (setValue()
),它位于 HTML 文件中的 java 脚本脚本中,它会更改计数器状态(百分比和填充栏).. .有什么办法吗?
html脚本代码:
<script type="text/javascript">
let reader = new FileReader();
class ProgressBar {
constructor(element, initialValue = 0) {
this.valueElem = element.querySelector('.progress-bar-value');
this.fillElem = element.querySelector('.progress-bar-fill');
this.setValue(initialValue);
}
setValue(newValue) {
if(newValue < 0){
newValue = 0;
}
if(newValue > 100){
newValue = 100;
}
this.value = newValue
this.update();
}
update() {
const percentage = this.value + '%';
this.fillElem.style.width = percentage;
this.valueElem.textContent = percentage;
}
}
var pb1 = new ProgressBar(document.querySelector('.progress-bar'),50);
</script>
您可以使用 WebSockets
WebSockets 是 Web 应用程序中 HTTP 通信的替代方法。
它们在客户端和服务器之间提供长期的双向通信通道。