Detectar Safari para celular

Muitos scripts na web detectam apenas o Safari ou apenas dispositivos Apple, mas retornam falsos positivos, como Safari para desktop ou Chrome móvel. Aqui está minha opinião para detectar apenas o Mobile Safari – salve para a próxima vez que você ficar louco com bugs criativos e irritantes:

/iP(ad|hone|od).+Version/[d.]+.*Safari/i

Como um teste Modernizr:

Modernizr.addTest('mobilesafari', function() {
return /iP(ad|hone|od).+Version/[d.]+.*Safari/i.test(navigator.userAgent);
});

Fonte para parte apenas do Safari: urbz em StackOverflow