我有一个祝福的盒子,里面有scrollable: true
let outerBox = blessed.box({
top: '0%',
left: '0%',
width: '0%+6',
height: '100%',
scrollable: true,
tags: true,
padding: 1,
mouse: true,
style: {
fg: 'white',
bg: 'black'
}
});
在里面我有很多我想要点击的元素。
[array of many elements].forEach((elem, i) => {
let innerBox = blessed.box({
content: elem,
"height": "0%+1",
"top": "0%+"+i,
style: {
hover: {
bg: "black",
fg: "white"
}
}
});
innerBox.on("click", (data) => {
console.log("clicked",guild)
});
outerBox.append(server);
});
但是,如果元素设置了样式属性或侦听单击事件处理程序,则在它们上滚动不再滚动外框。我必须在框的最边缘滚动才能真正滚动。
这有效,但我无法检测到点击:
[array of many elements].forEach((elem, i) => {
let innerBox = blessed.box({
content: elem,
"height": "0%+1",
"top": "0%+"+i
});
outerBox.append(server);
});
如何使用鼠标滚轮滚动外框,同时仍然能够检测到对内部元素的点击?