UIWebView之获取所点位置的图片标签和src

UIWebView有自己的UIResgure,如果我们手动加入自己的GestureRecognize将不能识别,如UILongPressGestureRecongnizer. 在浏览网页的时候,如果看到喜欢的图片,想把它保存下来如何办呢? 我们可以自己写一个程序来实现,用uiwebview开发一个自己的浏览器。

上面说到uiwebview不能识别long press gesture,幸好有一个可以识别,那就是double click.因此我们注册它,代码如下

UITapGestureRecognizer *doubleTap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(doubleTap:)];
doubleTap.numberOfTouchesRequired = 2;
[self.theWebView addGestureRecognizer:doubleTap];

然后就是实现doubleTap:

view plain
-(void) doubleTap :(UITapGestureRecognizer*) sender
{
    int scrollPositionY = [[self.theWebView stringByEvaluatingJavaScriptFromString:@"window.pageYOffset"] intValue];
    int scrollPositionX = [[self.theWebView stringByEvaluatingJavaScriptFromString:@"window.pageXOffset"] intValue];  

    int displayWidth = [[self.theWebView stringByEvaluatingJavaScriptFromString:@"window.outerWidth"] intValue];
    CGFloat scale = theWebView.frame.size.width / displayWidth;  

    CGPoint pt = [sender locationInView:self.theWebView];
    pt.x *= scale;
    pt.y *= scale;
    pt.x += scrollPositionX;
    pt.y += scrollPositionY;  

    NSString *js = [NSString stringWithFormat:@"document.elementFromPoint(%f, %f).tagName", pt.x, pt.y];
    NSString * tagName = [self.theWebView stringByEvaluatingJavaScriptFromString:js];
    if ([tagName isEqualToString:@"img"]) {
        NSString *imgURL = [NSString stringWithFormat:@"document.elementFromPoint(%f, %f).src", pt.x, pt.y];
        NSString *urlToSave = [self.theWebView stringByEvaluatingJavaScriptFromString:imgURL];
        NSLog(@"image url=%@", urlToSave);
    }
}  

这样我们就可以得到图片的url,然后下载保存就行了。

UIWebView之获取所点位置的图片标签和src,布布扣,bubuko.com

时间: 2024-10-17 11:30:48

UIWebView之获取所点位置的图片标签和src的相关文章

关于图片标签 <img src=" " alt=" "/> 中的 src 属性消失不见了的问题

前端使用 <img/> 标签展示图片的时候,src 指的是图片的路径,如果路径错了,图片不能正常展示出来:但是自己遇到一种更奇怪的情况,就是后台拼接字符串的方式,返回整个 <img/> 标签给前端展示图片,然后标签的 src=" " 属性整个消失不见了,连 alt=" " 属性也不见了,但是 style=" " 样式的属性就正常存在,最后也是搞了半天才知道原因,原来还是路径问题!!后台拼接字符成的方式返回给前端 html

java 获取HTML文本IMG标签的src地址

public static void main(String[] args) { String htmlText = "<p>的风格发的,多大的<img src=\"https://123.10.3.22:8080/File/uploadPictrue/20150917151201008.png\" /><img src=\"../File/uploadPic/2015/9/17/15/1118.png\" /><

3.1.1图片标签和列表标签

一,插入图片标签<img src=图片的地">img常用的标签 属性 说明 src 图像的源文件 alt 提示文字 width,height 高度,宽度 border 边框 vspac 垂直间距 hspace 水平间距 二,建立有序列表 原文地址:https://blog.51cto.com/14224115/2370095

[掌眼]IOS UIWebView Long press save image 长按图片保存到手机

具体效果可下载"掌眼"古玩江湖进行测试:http://bbs.guwanch.com ViewController.h @interface ViewController : CDVViewController<UIActionSheetDelegate>{ NSTimer *_timer; // 用于UIWebView保存图片 int _gesState; // 用于UIWebView保存图片 NSString *_imgURL; // 用于UIWebView保存图片 }

欧美斯项目签到功能,实时获取当前所在位置的经纬度

由于欧美斯项目需要签到功能,因此需要给后台传一个当前位置的经纬度,以下是获取经纬度的方法 1>导入CoreLocation.frameWork 2>引入头文件,并遵循协议 #import <CoreLocation/CoreLocation.h> <CLLocationManagerDelegate> 3>代码 @interface YYAboutUsViewController ()<UIWebViewDelegate,CLLocationManagerD

python获取原图GPS位置信息,轻松得到你的活动轨迹

一.图像EXIF信息 介绍 EXIF(Exchangeable image file format,可交换图像文件格式)是专门为数码相机的照片设定的,可以记录数码照片的属性信息和拍摄数据,如拍摄时间.图像分辨率.感光值.GPS坐标等. Exif最初由日本电子工业发展协会在1996年制定,版本为1.0.1998年,升级到2.1,增加了对音频文件的支持.2002年3月,发表了2.2版. Exif可以附加于JPEG.TIFF.RIFF等文件之中,为其增加有关数码相机拍摄信息的内容和索引图或图像处理软件

iOS获取app图标和启动图片名字(AppIcon and LaunchImage&#39;s name)

在某种场景下,可能我们需要获取app的图标名称和启动图片的名称.比如说app在前台时,收到了远程通知但是通知栏是不会有通知提醒的,这时我想做个模拟通知提示,需要用到icon名称:再比如在加载某个控制器时,想设置该控制器的背景图片为启动图片,需要用到启动图片名称. 而事实上icon图片放在系统AppIcon文件夹里,启动图片放在系统LaunchImage文件夹里,取这些图片的名称和其他一般资源图片名称不一样. 为了方便举例子,咱们先简单粗暴点 假设当前项目只支持iPhone设备,并且只支持竖屏:而

在控件的任意位置显示图片

在控件的任意位置显示图片 效果图 xml代码 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent&

在Button上、下、左、右位置添加图片和文字

转载请注明出处:http://blog.csdn.net/droyon/article/details/37564419 很多人有如标题所述的需求,而且大多数人采用了自定义组件解决了需求,其实还可以有更"懒"的方法. 1.先附效果图: 2.方案. 首先,Activity.java public class MainActivityTest extends Activity{ @Override protected void onCreate(Bundle savedInstanceSt