亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

UIWebView的HTML5擴展

2019-11-14 20:11:21
字體:
來源:轉載
供稿:網友
http://blog.csdn.net/duzixi/article/details/36047201

 

對于不少iOS開發者來說,HTML5的內容比較陌生。

尤其是UIWebView類的 stringByEvaluatingjavaScriptFromString 方法

讓很多人覺得又得學一種新的語言。

而這一部分也是項目中學生常問的問題之一。

本文以Category(類目)的方式擴展了UIWebView類,將一些常用的Javascript操作封裝成UIWebView類方法。

 

最新源代碼下載地址:https://github.com/duzixi/UIWebView-HTML5(持續維護)

 頭文件(UIWebView+HTML5.h)

////  UIWebView+HTML5.h//  WebViewJS////  Created by 杜子兮(duzixi) on 14-6-30.//  Edited  by 杜子兮(duzixi) on 14-7-11. 修改網頁圖片顯示大小//                                       添加(jQuery)//  Copyright (c) 2014年 lanou3g.com 藍鷗. All rights reserved.//#import <UIKit/UIKit.h>@interface UIWebView (JavaScript)#PRagma mark -#pragma mark 獲取網頁中的數據///  獲取某個標簽的結點個數- (int)nodeCountOfTag:(NSString *)tag;///  獲取當前頁面URL- (NSString *) getCurrentURL;///  獲取標題- (NSString *) getTitle;///  獲取圖片- (NSArray *) getImgs;///  獲取當前頁面所有鏈接- (NSArray *) getOnClicks;#pragma mark -#pragma mark 改變網頁樣式和行為///  改變背景顏色- (void) setBackgroundColor:(UIColor *)color;///  為所有圖片添加點擊事件(網頁中有些圖片添加無效)- (void) addClickEventOnImg;///  改變所有圖像的寬度- (void) setImgWidth:(int)size;///  改變所有圖像的高度- (void) setImgHeight:(int)size;///  改變指定標簽的字體顏色- (void) setFontColor:(UIColor *) color withTag:(NSString *)tagName;///  改變指定標簽的字體大小- (void) setFontSize:(int) size withTag:(NSString *)tagName;@end

 實現文件(UIWebView+HTML5.m):

////  UIWebView+HTML5.m////  Created by 杜子兮(duzixi) on 14-6-30.//  Edited  by 杜子兮(duzixi) on 14-7-11. 修改網頁圖片顯示大小//                                       添加(jQuery)//  Copyright (c) 2014年 lanou3g.com 藍鷗. All rights reserved.//#import "UIWebView+HTML5.h"#import "UIColor+Change.h"@implementation UIWebView (JavaScript)#pragma mark -#pragma mark 獲取網頁中的數據///  獲取某個標簽的結點個數- (int)nodeCountOfTag:(NSString *)tag{    NSString *jsString = [NSString stringWithFormat:@"document.getElementsByTagName('%@').length", tag];    int len = [[self stringByEvaluatingJavaScriptFromString:jsString] intValue];    return len;}///  獲取當前頁面URL- (NSString *)getCurrentURL{    return [self stringByEvaluatingJavaScriptFromString:@"document.location.href"];}///  獲取標題- (NSString *)getTitle{    return [self stringByEvaluatingJavaScriptFromString:@"document.title"];}///  獲取所有圖片鏈接- (NSArray *)getImgs{    NSMutableArray *arrImgURL = [[NSMutableArray alloc] init];        for (int i = 0; i < [self nodeCountOfTag:@"img"]; i++) {        NSString *jsString = [NSString stringWithFormat:@"document.getElementsByTagName('img')[%d].src", i];        [arrImgURL addObject:[self stringByEvaluatingJavaScriptFromString:jsString]];    }    return arrImgURL;}///  獲取當前頁面所有點擊鏈接- (NSArray *)getOnClicks{    NSMutableArray *arrOnClicks = [[NSMutableArray alloc] init];        for (int i = 0; i < [self nodeCountOfTag:@"a"]; i++) {        NSString *jsString = [NSString stringWithFormat:@"document.getElementsByTagName('a')[%d].getAttribute('onclick')", i];        NSString *clickString = [self stringByEvaluatingJavaScriptFromString:jsString];        NSLog(@"%@", clickString);        [arrOnClicks addObject:clickString];    }    return arrOnClicks;}#pragma mark -#pragma mark 改變網頁樣式和行為///  改變背景顏色- (void)setBackgroundColor:(UIColor *)color{    NSString * jsString = [NSString stringWithFormat:@"document.body.style.backgroundColor = '%@'",[color webColorString]];    [self stringByEvaluatingJavaScriptFromString:jsString];}///  為所有圖片添加點擊事件(網頁中有些圖片添加無效,需要協議方法配合截取)- (void)addClickEventOnImg{    for (int i = 0; i < [self nodeCountOfTag:@"img"]; i++) {        //利用重定向獲取img.src,為區分,給url添加'img:'前綴        NSString *jsString = [NSString stringWithFormat:            @"document.getElementsByTagName('img')[%d].onclick = /              function() { document.location.href = 'img' + this.src; }",i];        [self stringByEvaluatingJavaScriptFromString:jsString];    }}///  改變所有圖像的寬度- (void) setImgWidth:(int)size{    for (int i = 0; i < [self nodeCountOfTag:@"img"]; i++) {        NSString *jsString = [NSString stringWithFormat:@"document.getElementsByTagName('img')[%d].width = '%d'", i, size];        [self stringByEvaluatingJavaScriptFromString:jsString];    }}///  改變所有圖像的高度- (void) setImgHeight:(int)size{    for (int i = 0; i < [self nodeCountOfTag:@"img"]; i++) {        NSString *jsString = [NSString stringWithFormat:@"document.getElementsByTagName('img')[%d].height = '%d'", i, size];        [self stringByEvaluatingJavaScriptFromString:jsString];    }}///  改變指定標簽的字體顏色- (void)setFontColor:(UIColor *)color withTag:(NSString *)tagName{    NSString *jsString = [NSString stringWithFormat:        @"var nodes = document.getElementsByTagName('%@'); /          for(var i=0;i<nodes.length;i++){/              nodes[i].style.color = '%@';}", tagName, [color webColorString]];    [self stringByEvaluatingJavaScriptFromString:jsString];}///  改變指定標簽的字體大小- (void)setFontSize:(int)size withTag:(NSString *)tagName{    NSString *jsString = [NSString stringWithFormat:        @"var nodes = document.getElementsByTagName('%@'); /          for(var i=0;i<nodes.length;i++){/              nodes[i].style.fontSize = '%dpx';}", tagName, size];    [self stringByEvaluatingJavaScriptFromString:jsString];}@end

 原文出處:http://blog.csdn.net/duzixi/article/details/36047201


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲一区第一页| 国产97在线|日韩| 91视频九色网站| 国产亚洲一区二区精品| 美女少妇精品视频| 久久久久国产精品www| 国精产品一区一区三区有限在线| 久久综合免费视频影院| 日韩精品久久久久久福利| 日本欧美在线视频| 伦伦影院午夜日韩欧美限制| 91大神福利视频在线| 亚洲人成自拍网站| 亚洲天堂av综合网| 91久久精品日日躁夜夜躁国产| 欧美极品美女视频网站在线观看免费| 色www亚洲国产张柏芝| 国产亚洲精品高潮| 国产亚洲精品久久久久久| 日韩精品免费在线观看| 亚洲国产天堂久久综合| 91九色国产社区在线观看| 国产精品91久久久久久| 国产区亚洲区欧美区| 在线日韩欧美视频| 国产精品日韩欧美| 欧美激情欧美激情| 亚洲三级免费看| 日韩国产欧美精品一区二区三区| 欧美激情第三页| 亚洲一区第一页| 亚洲国产免费av| 国产精品吊钟奶在线| 国内精品久久久久久中文字幕| 国产不卡av在线免费观看| 亚洲成人久久一区| 亚洲黄色在线观看| 国内精品久久久久久| 国产日韩在线视频| 精品久久久久久| 亚洲黄页网在线观看| 亚洲一区二区精品| 国产成人在线亚洲欧美| 日韩在线精品一区| 亚洲成人激情小说| 免费99精品国产自在在线| 一区二区在线免费视频| 人人做人人澡人人爽欧美| 97国产精品视频人人做人人爱| 91高清视频在线免费观看| 91精品视频免费看| 日韩在线视频导航| 午夜精品理论片| 国产精品日韩在线一区| 国产精品久久久久77777| 亚洲欧美中文日韩在线| 久久精品精品电影网| 久久香蕉国产线看观看av| 亚洲美女在线视频| 国产综合在线视频| 成人a级免费视频| 国产一区二区在线播放| 中文字幕日韩专区| 国产精品最新在线观看| 国产97免费视| 久久99热精品这里久久精品| 久久精品国产免费观看| 欧美性xxxx极品高清hd直播| 久久五月情影视| 国产欧美日韩中文字幕在线| 国产精品欧美日韩久久| 国产精品久久久久aaaa九色| 91精品国产99久久久久久| 国产日韩中文在线| 久久久av电影| 高清欧美性猛交xxxx黑人猛交| 中文字幕av一区| 亚洲精品一区二三区不卡| 国产一区二区三区在线观看网站| 亚洲欧美激情精品一区二区| 久久久久在线观看| 亚洲三级黄色在线观看| 国产一区二区三区毛片| 亚洲第一福利视频| 日韩女优在线播放| 国产精品美女无圣光视频| 亚洲国产高清福利视频| 91中文字幕一区| 日韩欧美一区二区在线| 久久久国产91| 亚洲自拍偷拍福利| 亚洲在线观看视频| 欧美日韩在线视频一区二区| 日韩电影免费在线观看| 国产精品一区二区性色av| 亚洲va欧美va国产综合久久| 69av在线视频| 成人亚洲欧美一区二区三区| 中文字幕成人在线| 成人免费自拍视频| 色av中文字幕一区| 国产伊人精品在线| 精品美女久久久久久免费| 最近2019中文免费高清视频观看www99| 在线观看日韩av| 国产精品福利观看| www.欧美精品一二三区| 国产专区欧美专区| 久久在精品线影院精品国产| 国产精品看片资源| 最近2019中文免费高清视频观看www99| 亚洲电影免费在线观看| 亚洲国产天堂久久综合| 国产精品影片在线观看| 亚洲国产成人精品久久| 国产日韩欧美在线看| 国产精品91在线| 91久久国产综合久久91精品网站| 欧美精品18videosex性欧美| 精品久久久在线观看| 91高清视频免费观看| 亚洲美女久久久| 亚洲精品视频二区| 国产一区二区丝袜高跟鞋图片| 国产成人精品av| 国产精品成久久久久三级| 亚洲白拍色综合图区| 亚洲精品美女在线| 2019中文字幕全在线观看| 日韩天堂在线视频| 国产精品视频一区国模私拍| 亚洲新中文字幕| 爽爽爽爽爽爽爽成人免费观看| 亚洲成人精品视频| 不卡av电影在线观看| 欧美日韩精品在线观看| 成人精品视频99在线观看免费| 91精品国产色综合| 亚洲国产精品福利| 欧美精品电影在线| 国产精品情侣自拍| 色婷婷综合久久久久中文字幕1| 国产精品欧美激情| 久久精品国产69国产精品亚洲| 国产91免费观看| 91精品一区二区| 日韩天堂在线视频| 亚洲视频axxx| 成人中文字幕在线观看| 亚洲人成电影在线观看天堂色| 精品久久久久久电影| 久久精视频免费在线久久完整在线看| 久久6精品影院| 国产精品日日摸夜夜添夜夜av| 18性欧美xxxⅹ性满足| 久久久久北条麻妃免费看| 亚洲视频免费一区| 亚洲三级 欧美三级| 欧美午夜视频一区二区| 高清欧美一区二区三区| 国产精品久久久久7777婷婷| 国产综合在线观看视频| 久久偷看各类女兵18女厕嘘嘘| 国产成人精彩在线视频九色|