我有没有包装的列表元素。它们位于一个列表中,该列表位于具有overflow:hidden;overflow-y:auto
的固定大小div中,因此可以滚动。正如您所料,文本被裁剪为右侧。
我试图显示鼠标悬停时溢出div的“长”版文本。这很依赖于
if (0 > e.target.clientWidth - e.target.scrollWidth) {
(其中e.target
是鼠标悬停事件中的LI
。)
这是我想要的基本主要工作(警告:丑陋的黑客,欢迎改进)。
但是,我坚持滚动。当我将鼠标悬停在元素上时,它被添加到正文中,因为它比z包含div更高(它在dom后面并且有一个位置:固定) - 它出现在div的滚动条上方,因为我需要。当鼠标悬停在此元素上时,我希望鼠标滚轮[和我尚未编码的键盘箭头]继续向上和向下滚动div。该事件不会从鼠标悬停div“冒泡”,因为它不是同一个父/节点(并且由于溢出要求而不能)。
有没有办法在特定对象上传递或重新触发鼠标滚轮事件(例如传递事件)?
答案 0 :(得分:2)
我认为最简单的方法是将"pointer-events": "none"
添加到long-version元素中,因此滚动不会考虑它。
然后,您需要检查哪些元素需要长版本,并在mouseenter / mouseleave上添加/删除其他div.long-version
。