Kendo 多选滚动条点击触发下拉
Kendo multiselect scrollbar click triggers drop down
如果在选定项目区域内单击滚动条,是否有办法防止多选控件展开以显示项目?
这里有一个 "issue" 的 example,至少我希望这不是理想的功能。我希望所选项目滚动 down/up,而不是在多选控件中公开可选项目。
点击滚动条前:
点击滚动条后:
多选列表在多选小部件的鼠标按下事件中打开。当你点击元素滚动条时,也会触发与点击事件不同的mousedown事件。
更改此行为的最简单方法是更改打开多选的事件。所以首先你必须停止原始事件:
var multiselectwrap = multiselect.element.closest('.k-multiselect').find('.k-multiselect-wrap');
multiselectwrap.on('mousedown', function(e){
e.stopPropagation();
});
其次,您可以在点击时触发打开多选:
multiselectwrap.on('click', function(e){
multiselect.open();
});
Kendo dojo 示例:http://dojo.telerik.com/urUYU
如果您想在 mousedown 时保持窗口小部件打开,您必须使用事件中的鼠标位置并检查您是否单击滚动,这会使此代码复杂化。
如果在选定项目区域内单击滚动条,是否有办法防止多选控件展开以显示项目?
这里有一个 "issue" 的 example,至少我希望这不是理想的功能。我希望所选项目滚动 down/up,而不是在多选控件中公开可选项目。
点击滚动条前:
点击滚动条后:
多选列表在多选小部件的鼠标按下事件中打开。当你点击元素滚动条时,也会触发与点击事件不同的mousedown事件。
更改此行为的最简单方法是更改打开多选的事件。所以首先你必须停止原始事件:
var multiselectwrap = multiselect.element.closest('.k-multiselect').find('.k-multiselect-wrap');
multiselectwrap.on('mousedown', function(e){
e.stopPropagation();
});
其次,您可以在点击时触发打开多选:
multiselectwrap.on('click', function(e){
multiselect.open();
});
Kendo dojo 示例:http://dojo.telerik.com/urUYU
如果您想在 mousedown 时保持窗口小部件打开,您必须使用事件中的鼠标位置并检查您是否单击滚动,这会使此代码复杂化。