Para desarrolladores multiplataforma (tenga en cuenta que todas las respuestas dadas hasta ahora no funcionarán en iOS) :
Mouseup / down parecía funcionar bien en Android , pero no en todos los dispositivos, es decir, (samsung tab4). No funcionó en absoluto en iOS .
Investigaciones posteriores parecen que esto se debe a que el elemento tiene selección y la ampliación nativa interrumpe al oyente.
Este detector de eventos permite abrir una imagen en miniatura en un modal de arranque, si el usuario retiene la imagen durante 500 ms.
Utiliza una clase de imagen receptiva, por lo que muestra una versión más grande de la imagen. Esta pieza de código ha sido completamente probada (iPad / Tab4 / TabA / Galaxy4):
var pressTimer;
$(".thumbnail").on('touchend', function (e) {
clearTimeout(pressTimer);
}).on('touchstart', function (e) {
var target = $(e.currentTarget);
var imagePath = target.find('img').attr('src');
var title = target.find('.myCaption:visible').first().text();
$('#dds-modal-title').text(title);
$('#dds-modal-img').attr('src', imagePath);
// Set timeout
pressTimer = window.setTimeout(function () {
$('#dds-modal').modal('show');
}, 500)
});
jQuery(...).longclick(function() { ... });