【发布时间】:2019-02-18 22:09:57
【问题描述】:
我是 JavaScript 的新手,我正在使用 JavaScript 的 datePicker 库。我几乎使用的是开箱即用的代码,读取当前所选日期的函数让我有点困惑。这是代码(我对其进行了一些修改以格式化日期 - 以便将其与我的数据集的日期进行字符串匹配)。
const picker = datepicker(document.querySelector('#inlineDatepicker'), {
// Event callbacks.
onSelect: function(instance) {
console.log(instance)
var instanceSplit = instance.dateSelected.toString().split(" " ,4)
var instanceClean = instanceSplit.toString().replace(/,/g, ' ')
if (instanceClean === 'Mon Feb 11 2019') {
console.log('datematch!')
return 'blue'
}
},
});
我不熟悉onSelect: function(instance) {} 函数的格式。我见过的所有函数都是用这种格式写的:function someFunction(parameter) {}。
这引出了我的问题:onSelect: function(instance) {} 函数的实际函数名称是什么?例如,如果我想根据所选日期更改数据的外观 - 即在我的数据点上返回“蓝色”笔划 - 我应该调用什么函数名称?例如,这里的代码尝试在上面的函数中传入返回的笔画值,但是它并没有将onSelect识别为函数(说它是未定义的):
var events = mapG.selectAll("circle")
.data(allSFEvents)
.enter().append("circle")
.style("stroke", onSelect)
【问题讨论】:
-
datepicker是 jQuery UI 的一种方法,或者您可能有其他一些库在那里运行,从您调用它的方式来看。 JavaScript 是一种语言,而不是组件库(实际上,它不仅限于浏览器)。关于您的代码;从onSelect事件处理程序(这是您传递给datepicker函数的对象的属性)返回颜色名称没有多大意义。 -
你认为
.style("stroke", onSelect)是什么意思?
标签: javascript jquery d3.js datepicker