4

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

私はJquery Selectable(上記のリンク)を使用していますが、ユーザーはコントロールボタンを押したままにして複数のアイテムを選択する必要があります...ユーザーがコントロールボタンを押したままにせずに複数のアイテムを選択できる方法はありますか?

言い換えれば、ユーザーがアイテムをクリックして選択し、もう一度クリックして選択を解除できるようにしたいのです。

何かご意見は?

4

2 に答える 2

1

metaKeymousedown を設定し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 に答える