如果您使用鼠标(甚至鼠标滚轮)滚动结果,则使用 CakePHP 的 Ajax 助手(当前为 1.2.3.8166)提供 $ajax->autoComplete 结果列表,并将结果列表作为渲染视图返回, 一切都很好。另一方面,使用箭头键会产生笨拙地滚动视图的讨厌效果:如果我按下,选择框和整个页面将移动到浏览器视图窗格的底部;向上按压具有将其移至顶部的相反效果。
有没有其他人注意到这种行为,并想到了什么?结果列表由例如以下代码提供(从控制器中的 autoComplete() 函数获取 $people):
<ul>
<?php foreach($people as $person): ?>
<li><?php echo $person['Person']['id']; ?></li>
<?php endforeach; ?>
</ul>
(只是一个例子,我实际上显示了 id 和 name/surname/commercial name)。
列表的 CSS 如下:
div.auto_complete {
position: absolute;
width: 250px;
background-color: white;
border: 1px solid #888;
margin: 0px; padding: 0px;
}
div.auto_complete ul{
list-style: none;
margin: 0px;
}