- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试重新利用我找到的仪表盘 here .目前我的指针在提交时移动,但是在更新到新位置之前它会重置为 0,我宁愿它直接调整位置。
在尝试想办法做到这一点时,我认为我需要修改这段处理重置的代码;
Needle.prototype.moveTo = function(perc) {
var self,
oldValue = this.perc || 0;
this.perc = perc;
self = this;
// Reset pointer position
this.el.transition().delay(100).ease('quad').duration(200).select('.needle').tween('reset-progress', function() {
return function(percentOfPercent) {
var progress = (1 - percentOfPercent) * oldValue;
repaintGauge(progress);
return d3.select(this).attr('d', recalcPointerPos.call(self, progress));
};
});
this.el.transition().delay(300).ease('bounce').duration(1500).select('.needle').tween('progress', function() {
return function(percentOfPercent) {
var progress = percentOfPercent * perc;
repaintGauge(progress);
return d3.select(this).attr('d', recalcPointerPos.call(self, progress));
};
});
};
return Needle;
})
();
所以我想,我必须找到一种方法在更新之前记住旧值而不是重置为 0,或者只是尝试完全删除重置功能?
但我不确定如何才能做到这一点。
这里是更新函数;
function updateNeedle() {
var value = 90;
var percentValue = value / gaugeMaxValue;
percent = percentValue;
needle.moveTo(percent);
}
我做了一个plnk,并尝试去掉与问题无关的所有内容以减少代码,只需单击提交以更新位置,希望问题有意义。
https://plnkr.co/edit/NtlpGoEf5J1XRfgTjewR?p=preview
我认为这一切可能有点老套,但我还是希望有人能提供帮助!
谢谢
最佳答案
我更改了您的moveTo
函数。它使用从 0 开始的 progress
。所以,我改为:
var progress = oldValue + (percentOfPercent * (perc - oldValue));
这里是 plunker:https://plnkr.co/edit/RCNNpLX0Un7LzWW1YDwu?p=preview
我使用 var value = Math.random()*100
使这个另一个 plunker 每次用户单击“提交”时将值设置为随机数。我相信它按照你想要的方式工作,检查它:https://plnkr.co/edit/xj2sGBidjnPN5R9CkA59?p=preview
关于javascript - 从最后一个值更新位置/转换(gauge chart/d3.js),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37760494/
是否有可能像 dojox.gauges 那样在更新时指针逐渐改变值你可以在这个example中看到, 当你按下按钮 set 15 直接变成了15。 是否有可能让它逐渐通过中间值? 最佳答案 根据 do
我正在尝试使用 Highcharts (实心表)创建自定义数据刻度盘。 请帮帮我。 我无法生成像实心仪表尖刻度盘那样的箭头端。这是我当前的图表: 更新代码:请复制粘贴下面提供的 fiddle 链接中的
我有一个自 2019 年 1 月以来一直在使用的仪表项目,突然我开始收到此不受支持的仪表版本错误。我认为这是由于 Gauge、intellij 或 gauge intellij 插件的更新造成的,但事
我正在尝试实现 http://bernii.github.com/gauge.js/使用 gauge.min.js 而不是咖啡。但对于我的一生来说,我什至无法展示这一点。谁能给我代码来让它显示出来吗?
我正在使用 melonJS 制作 2d 游戏。 在我的游戏中,我有一个绕其轴旋转的箭头。这个箭头是一个png图像。当我保持鼠标左键时,箭头需要从黄色填充到红色,从底部到顶部。这是一个例子: 初始箭头全
当 max 设置为非常大的数字(例如 666772)时会出现问题。Highcharts 将根据 tickPixelInterval 设置的内容取该数字并将其向下舍入。 如果我将 tickPixelIn
我正在尝试更改谷歌仪表轴的数字格式。默认情况下,轴值是一个整数(例如 0、120),但我想显示一个 £ 符号和格式为货币(例如 £0、£120)。我已经能够使用 NumberFormat 更改仪表底部
使用 Gauge我们可以使用 Context Steps 在每个场景之前重复一组步骤紧跟在测试规范标题之后。例如: Delete project ============== * User log i
我尝试在 Gauge 规范中使用 file 特殊参数。 Export a customer ---------------------------------------- * Find custom
我试图设置由 google chart api 创建的 gauge gauge 的字体大小 我对如何使用 css 来改变 gauge 的字体大小有点困惑 html代码 我使用以下几行
我有一个范围从 0 - 100 的交互式 dojox 仪表。但我只希望我的用户能够将指针移动到 0、25、50、75 和 100。这可能吗? // create the
我目前刚刚开始使用 JS,需要一个项目的 highcharts,到目前为止一切顺利,但我确实有一个非常新手的问题:我有一些任务执行 cron 作业并将值范围:10-90 输出到文件。如何将值加载到仪表
我正在开发一个显示来自服务器的实时数据的页面。现在我正在用一些 mqtt 客户端 websocket(比如 hivemq)测试它。我收到的值本身显示在 chrome 控制台中,但我正在尝试使用 NGX
在仪表图中,使用 jquery 插件。 此时,我正在设置固定值,但我需要通过 json 存档设置值和颜色。我该如何制作? $('.gauge1').gauge
我正在使用 wxPython 搜索特定目录中的所有文件。当它搜索文件时,进度(文件数)被发送到进度条,只是为了提供一些背景信息。我想要做的是将进度条向下移动到 SetStatusText 通常显示名称
我使用的是具有十进制值的 highcharts 实心仪表。这是 jsfiddle http://jsfiddle.net/7hm1mkbn/ $('#container-temp').highchar
我有一个要发送到 prometheus 的 json 格式的指标列表。我如何使用 client_golang 中的 Guage 指标类型将这些指标一次全部发送到 prometheus? 现在我有下面的
上下文:我想为 RabbitMQ 构建自己的导出器。为此,我设置了一个 HTTP 服务器来查询管理 API,解析响应并使用 Prometheus 格式构建适当的响应 我正在测量队列中的消息数量,以便在
我是 android 新手,一直在学习 udacity android 类(class)。我被要求从 github 安装一个现有的 android 项目,所以我收到以下错误。 无法启动 Gauge I
我已经尝试并走到了这一步,但仍然无法按照要求实现。 var chart = new Highcharts.chart('container', { chart:{ ty
我是一名优秀的程序员,十分优秀!