我正在尝试检测 djitComboBoxMenuPopup 向上或向下打开的方向。我的目标是在向上扩展而不是向下扩展时应用不同的样式。有没有内置的方法来检测这个?
问问题
462 次
1 回答
4
我不确定是否提供了执行此操作的功能,但是您可以通过检查客户端两个元素的位置来“破解”您自己的功能。为此,请使用每个comboBox.domNode.getBoundingClientRect().top
和comboBox.dropDown.domNode.getBoundingClientRect().top
然后在 if 中使用这些值来确定哪个在哪个之上呈现。
例子:
var comboTop = comboBox.domNode.getBoundingClientRect().top;
var dropDownTop = comboBox.dropDown.domNode.getBoundingClientRect().top;
if( dropDownTop < comboTop ){
//Drop down is above combo
} else {
//Drop down is below combo
}
对的支持getBoundingClientRect()
可能因浏览器而异,但我的理解是所有现代浏览器版本都支持它。
于 2013-09-16T17:35:07.793 回答