【发布时间】:2011-01-20 19:22:30
【问题描述】:
我有一个设置为 overflow: auto; 的 div。这个 div 的内容是可选择的(使用 jQuery UI)。
当 div 溢出并出现滚动条时,滚动条本身变为可选择的,因此滚动效果不佳。在 FF/Chrome 中,我可以滚动 div,但我得到了可选择的轮廓。在 Safari 中,滚动条根本不会参与,因为单击是由 selectable 的处理程序拾取的。
我可以使用选择器将滚动条添加到“取消”项目列表吗?或者有什么其他方法可以防止滚动条被选中?
这是我如何配置可选 div 的代码 sn-p:
$(".mySelectable").selectable( {
cancel: '.myButton, .notSelectable',
filter: '.rowSelectable',
selecting: function(event, ui){
handleSelection(ui.selecting);
},
selected: function(event, ui) {
handleSelected(ui.selected);
},
unselected: function(event, ui) {
handleUnselected(ui.unselected);
}
});
我的 HTML 看起来像:
<div class="mySelectable"> <!-- set to auto overflow -->
<div class="myButton">I can't be selected</div>
<div class="rowSelectable">I am a selectable row</div>
...
</div>
理想情况下,我正在寻找可以添加到“取消”选项中的内容,以帮助跳过滚动条。
【问题讨论】:
-
这取决于您在
div中的内容以及您如何获得focus操作。你能发布一些代码和更多的描述吗? -
添加了代码。 “获得焦点”是什么意思?