从uiwebview以编程方式获取所选元素?

raa*_*aaz 5 javascript iphone uiwebview ipad

目前我正在使用此示例网站并在我的网页浏览中显示.网页显示正确.

现在,我试图找出用户点击uiwebview后选择了哪些数据.

为此,我可以通过使用获得点击CGPoint UITapGestureRecognizer.

-(void)singleTap:(UIGestureRecognizer *)gestureRecognizer
{

    CGPoint touchPoint = [gestureRecognizer locationInView:myWebView];

    NSString *js = [NSString stringWithFormat:@"document.elementFromPoint(%f, %f).toString()", touchPoint.x, touchPoint.y];

    NSString * tagName = [myWebView stringByEvaluatingJavaScriptFromString:js];

    NSLog(@"Selected Name: %@",tagName); 

}

// In log it is displaying [object SVGPathElement]
Run Code Online (Sandbox Code Playgroud)

一旦用户在第一张图中选择垂直条,我想得到确切的数据(例如1994/1995/1996).

这该怎么做?

Col*_*sey 0

如果它们都是独立的 DOM 元素,您应该能够在 JavaScript 中侦听 touchstart 事件,并且当您获取事件对象时,它应该具有event.target,这将是用户单击的元素。然后你可以在JS中捕获你需要的数据,然后将其发送回Objective-c。将数据从 JS 获取到本机代码的最佳方法是使用UIWebView delegate,这应该可以为您解决问题!