0

shiftキーを押したときにユーザーに選択させたい。

$("#div").selectable({
        start: function(st) {
            $(window).keydown(function(e){
                if(!e.shiftKey){
                    st.stopPropagation();
                }
            });
        });

いいえ?

4

3 に答える 3

1

.shiftKey次のように、イベントのプロパティを直接使用することで(mousedownイベントにも存在します)、コードを短縮してはるかに単純にすることができます。

$("#div").mousedown(function(e){
   if(e.shiftKey) return;
   e.stopImmediatePropagation();
   return false;
}).selectable();

ここでテストできます

于 2010-10-24T11:35:15.483 に答える
0
$(window).keydown(function(e){
  if(!e.shiftKey){
     $("#div").selectable({
        start: function(st) {
        st.stopPropagation();
          //your code here
        });

     }
});

それが機能しない場合は、ウィンドウまたは「本体」の代わりにドキュメントを使用してみてください

于 2010-10-23T05:29:21.337 に答える
0

それまたは同様のものを必要とする人にとって、これは私にとってうまくいきました:

    var shift = false;

    $(window).keydown(function(e){
        if(e.shiftKey){
    shift = true;
        }
    })
    .keyup(function(e){
        if(!e.shiftKey){
            shift = false;
        }
    });

    $("#div")
    .mousedown(function(e){
       if(!shift){
         e.stopImmediatePropagation();
         return false;          
       }
    })
    .selectable();
于 2010-10-23T06:06:24.890 に答える