Absolute
позиционирование работает, однако fixed
позиционирование сложнее ...
Проблема, с которой вы столкнулись, не имеет никакого отношения к позиционированию.Объект события touchstart содержит список касаний, и вам нужно получить страницу X / pageY для первого касания.Что-то вроде:
var posY = (spawn.touches ? spawn.touches[0].pageY : spawn.pageY) - 50;
var posX = (spawn.touches ? spawn.touches[0].pageX : spawn.pageX) - 50;
НО, это не сработает, если вы связываете, используя jQuery, так как он нормализует объект события.Так что вам нужно сделать что-то вроде:
var posY = (spawn.originalEvent.touches ? spawn.originalEvent.touches[0].pageY : spawn.pageY) - 50;
var posX = (spawn.originalEvent.touches ? spawn.originalEvent.touches[0].pageX : spawn.pageX) - 50;
Это немного многословно, но вы можете придумать более хороший способ написать это:)