4

http://jqueryui.com/demos/selectable/#display-grid

我正在使用 Jquery Selectable(上面的链接),但用户必须按住控制按钮才能选择多个项目......无论如何用户可以在不按住控制按钮的情况下选择多个项目?

换句话说:我希望用户能够通过单击来选择任何项目并通过再次单击来取消选择它。

有什么想法吗?

4

2 回答 2

1

您可以metaKey在 mousedown 上设置以模拟Ctrl被按下:

$('#selectable').bind("mousedown", function(e) {
    e.metaKey = true;
}).selectable()​;​

请参阅此演示

于 2012-10-09T18:33:39.987 回答
0

从链接上的示例中,您可以修改脚本以将元素更改为切换

<style>
#feedback { font-size: 1.4em; }
#selectable .ui-selecting { background: #FECA40; }
#selectable .ui-selected { background: #F39814; color: white; }
#selectable { list-style-type: none; margin: 0; padding: 0; }
#selectable li { margin: 3px; padding: 1px; float: left; width: 100px; height: 80px; font-size: 4em; text-align: center; }
</style>
<script>
$(function() {
    $('#selectable li').bind('mouseup', function(e) {
        $(e.target).removeClass('ui-selecting');
        var selected = $(e.target).attr('data-selected');
        if (selected) {
            $(e.target).attr('data-selected', null);
        } else {
            $(e.target).addClass('ui-selected');
            $(e.target).attr('data-selected', true);
        }
    });
    $('#selectable li').bind('mousedown', function(e) {
        $(e.target).removeClass('ui-selected');
        $(e.target).addClass('ui-selecting');
    });
});
</script>
于 2012-06-09T13:33:53.507 回答