日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > HTML >内容正文

HTML

uiwebview 编辑html5,【iOS】UIWebView HTML5 扩展

發布時間:2024/9/27 HTML 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 uiwebview 编辑html5,【iOS】UIWebView HTML5 扩展 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

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

尤其是UIWebView類的stringByEvaluatingJavaScriptFromString 方法

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

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

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

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

原文首發地址:http://blog.csdn.net/duzixi/article/details/36047201

頭文件(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 @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

總結

以上是生活随笔為你收集整理的uiwebview 编辑html5,【iOS】UIWebView HTML5 扩展的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 一级做a爱片性色毛片 | 亚洲色图在线视频 | 久久久久无码国产精品不卡 | 少妇乱淫 | 国产欧美精品一区二区色综合朱莉 | 久久女人天堂 | 中文字幕第23页 | 亲吻刺激视频 | 亚洲第一大综合区 | 日本护士体内she精2xxx | a黄色一级片 | 日韩精品一区二区免费视频 | 午夜视频精品 | 大地资源二中文在线影视免费观看 | 两个小y头稚嫩紧窄h文 | 欧美一级片在线播放 | 台湾佬在线 | 苍井空亚洲精品aa片在线播放 | yjizz视频网 国产乱人对白 | av在线播放国产 | 色5566 | 热久久国产精品 | 99re这里只有精品6 | 欧美性猛交xxxx乱大交蜜桃 | 亚洲精品77777 | 国产又爽又黄免费视频 | 亚洲欧美色图片 | 黄色av网址大全 | 91视频免费观看 | 欧美黄网在线观看 | av色片 | 99久久婷婷国产综合精品草原 | 中文字幕2018 | 婷婷色一区二区三区 | 国产区小视频 | 女生扒开尿口给男生捅 | 我要色综合天天 | 寂寞人妻瑜伽被教练日 | 天堂bt在线 | 视频在线观看一区二区三区 | 暧暧视频在线观看 | 去毛片 | 久操综合 | 国产资源一区 | 中国男人操女人 | 天天操夜夜欢 | 私人影院毛片 | 婷婷色伊人 | 性欧美videos高清hd4k | 波多野结衣之双调教hd | 三级男人添奶爽爽爽视频 | 印度午夜性春猛xxx交 | 女同av在线播放 | 亚洲爽爽 | 神马午夜伦 | 蜜桃传媒一区二区亚洲av | 中文字幕乱妇无码av在线 | 久久精品4 | 中文字幕人妻一区二区 | 欧美日韩看片 | 亚洲v在线观看 | 综合久久国产 | 亚洲成人黄 | 国产69精品久久久久999小说 | 成人av男人的天堂 | 久久午夜无码鲁丝片午夜精品 | 亚洲欧美一区二区三区四区 | 欧美激情在线狂野欧美精品 | 不卡一区二区在线视频 | www.youji.com| 色婷婷狠 | 黄色大片a级 | 国产麻豆精品一区二区 | 国产在线麻豆 | 久久亚洲综合色 | 丁香花五月天 | 国产xx在线观看 | 国产精品一区二区久久国产 | 日产亚洲一区二区三区 | 日日噜噜噜噜久久久精品毛片 | 少妇高潮a一级 | a级片在线视频 | 黄色免费视频观看 | 日本高清无吗 | 久久伊人婷婷 | 国产手机在线观看 | 在线亚洲一区二区 | 亚洲成av人片在线观看 | 中文视频一区二区 | 伊人av在线播放 | 欧美激情 在线 | 亚洲自拍偷拍网站 | 亚洲国产中文字幕在线观看 | 农村搞破鞋视频大全 | 黄色高潮 | 欧美精品小视频 | 九九热视频在线观看 | 久久蜜桃视频 | jzz在线观看 |