ios 웹 페이지 의 내용 가 져 오기 또는 수정
stringByEvaluatingJavaScriptFromString
stringByEvaluatingJavaScriptFromString 방법 을 사용 하려 면 UIWebView 의 페이지 를 불 러 온 후에 호출 해 야 합 니 다.우리 위 에 UIWebView 컨트롤 을 끌 어 다 놓 습 니 다.Load 에서 google mobile 을 이 컨트롤 에 불 러 옵 니 다.코드 는 다음 과 같 습 니 다.
- (void)viewDidLoad
{
[super viewDidLoad];
webview.backgroundColor = [UIColor clearColor];
webview.scalesPageToFit =YES;
webview.delegate =self;
NSURL *url =[[NSURL alloc] initWithString:@"http://www.google.com.hk/m?gl=CN&hl=zh_CN&source=ihp"];
NSURLRequest *request = [[NSURLRequest alloc] initWithURL:url];
[webview loadRequest:request];
}
우 리 는 웹 뷰 Did FinishLoad 방법 에서 자바 script 을 통 해 인터페이스 요 소 를 조작 할 수 있 습 니 다.1.현재 페이지 의 url 가 져 오기.
- (void)webViewDidFinishLoad:(UIWebView *)webView {
NSString *currentURL = [webView stringByEvaluatingJavaScriptFromString:@"document.location.href"];
2,페이지 제목 가 져 오기:
NSString *title = [webview stringByEvaluatingJavaScriptFromString:@"document.title"];
3.인터페이스 요소 의 값 을 수정 합 니 다.
NSString *js_result = [webView stringByEvaluatingJavaScriptFromString:@"document.getElementsByName('q')[0].value=' ';"];
4.양식 제출:
NSString *js_result2 = [webView stringByEvaluatingJavaScriptFromString:@"document.forms[0].submit(); "];
5.모든 html 가 져 오기
NSString *allHtml = @"document.documentElement.innerHTML";
NSString *allHtmlInfo = [webView stringByEvaluatingJavaScriptFromString:allHtml];
6.웹 페이지 의 값 가 져 오기
NSString *htmlNum = @"document.getElementById('title').innerText";
NSString *numHtmlInfo = [webView stringByEvaluatingJavaScriptFromString:htmlNum];
7.js 코드 삽입위의 기능 은 js 함수 에 봉 하여 이 함 수 를 페이지 에 삽입 하여 실행 할 수 있 습 니 다.코드 는 다음 과 같 습 니 다.
if ([title compare: @"Google"]==NSOrderedSame ) {
[webView stringByEvaluatingJavaScriptFromString:@"var script = document.createElement_x('script');"
"script.type = 'text/javascript';"
"script.text = "function myFunction() { "
"var field = document.getElementsByName('q')[0];"
"field.value=' ';"
"document.forms[0].submit();"
"}";"
"document.getElementsByTagName_r('head')[0].appendChild(script);"];
[webView stringByEvaluatingJavaScriptFromString:@"myFunction();"];
}
위의 코드 보기:a.먼저 js 를 통 해 script 라벨 을 만 듭 니 다.type 은'text/javascript'입 니 다.
b.그리고 이 탭 에 문자열 을 삽입 합 니 다.이 문자열 은 함수 입 니 다.my Function,이 함 수 는 구 글 이 키 워드 를 자동 으로 검색 하 는 기능 을 실현 합 니 다.
c.그리고 stringByEvaluatingJavaScriptFromString 을 사용 하여 my Function 함 수 를 실행 합 니 다.
위 에서 말 한 것 은 편집장 이 여러분 에 게 소개 한 ios 가 웹 페이지 의 내용 을 얻 거나 수정 하 는 것 입 니 다.여러분 에 게 도움 이 되 기 를 바 랍 니 다.궁금 한 점 이 있 으 면 저 에 게 메 시 지 를 남 겨 주세요.편집장 은 제때에 여러분 에 게 답 할 것 입 니 다.여기 서도 저희 사이트 에 대한 여러분 의 지지 에 감 사 드 립 니 다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Swift의 패스트 패스Objective-C를 대체하기 위해 만들어졌지만 Xcode는 Objective-C 런타임 라이브러리를 사용하기 때문에 Swift와 함께 C, C++ 및 Objective-C를 컴파일할 수 있습니다. Xcode는 S...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.