У меня есть UIWebView, в котором он имеет UITapGestureRecognizer, и в основном в моем распознавателе жестов касания у меня есть:
- (CGPoint) pointsForImage:(UIGestureRecognizer *)sender
{
CGPoint pt = [sender locationInView:self];
NSString * offsetTop = [NSString stringWithFormat:@"document.elementFromPoint(%f, %f).offsetTop", pt.x, pt.y
];
NSString * offsetLeft = [NSString stringWithFormat:@"document.elementFromPoint(%f, %f).offsetLeft", pt.x, pt.y
];
NSString * scrollTop = [NSString stringWithFormat:@"document.elementFromPoint(%f, %f).parentNode.scrollTop", pt.x, pt.y
];
NSString * scrollLeft = [NSString stringWithFormat:@"document.elementFromPoint(%f, %f).parentNode.scrollLeft", pt.x, pt.y
];
float x = [[self stringByEvaluatingJavaScriptFromString:offsetTop] floatValue] - [[self stringByEvaluatingJavaScriptFromString:scrollTop] floatValue];
float y = [[self stringByEvaluatingJavaScriptFromString:offsetLeft] floatValue] - [[self stringByEvaluatingJavaScriptFromString:scrollLeft] floatValue];
CGPoint point = CGPointMake(x, y);
return point;
}
В основном я пытаюсь найти верхнюю левую позицию x и yобраз.Не по отношению к UIWebView, а к представлению содержимого.Итак, скажем, что положение изображения составляет 1000 пикселей вниз, но сейчас я просматриваю UIWebView на полпути вниз, и поэтому я хочу видеть число 200. Надеюсь, это имеет смысл