seleccionable jQuery únicamente con acceso directo
-
25-09-2019 - |
Pregunta
Quiero permitir al usuario seleccionar cuando se lleva a cabo la tecla de mayúsculas.
$("#div").selectable({
start: function(st) {
$(window).keydown(function(e){
if(!e.shiftKey){
st.stopPropagation();
}
});
});
no
Solución
Se puede acortar hasta que su código sea mucho más simple mediante el uso de la propiedad .shiftKey
en el evento directamente (el mismo de la presente en el evento mousedown
también), así:
$("#div").mousedown(function(e){
if(e.shiftKey) return;
e.stopImmediatePropagation();
return false;
}).selectable();
Otros consejos
para aquellos que lo necesitan o algo similar, esto funcionó bien para mí:
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();
$(window).keydown(function(e){
if(!e.shiftKey){
$("#div").selectable({
start: function(st) {
st.stopPropagation();
//your code here
});
}
});
Si esto no intento documento utilización trabajo en lugar de ventana o 'cuerpo'
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow