2011-04-25 8 views

답변

1

이름을 얻는 데 필요한시기에 따라 다릅니다. 누군가가 링크를 클릭 할 때 이름이 필요하면 링크를 클릭 할 때 실행되는 JavaScript (onclick 핸들러)를 설정할 수 있습니다. html 문자열 만 있으면 정규식을 사용하여 문서를 구문 분석하고 모든 이름 속성을 가져올 수 있습니다. Objective-C에 대한 좋은 정규 표현식 라이브러리는 RegexKit (또는 같은 페이지에있는 RegexKitLite)입니다.

다음과 같이 보일 것입니다 링크에서 이름 속성을 구문 분석에 대한 정규식 :

/<a[^>]+?name="?([^" >]*)"?>/i 

편집 : 누군가가 뭔가를 보일 것이다 클릭하면 링크에서 이름을 얻기를위한 자바 스크립트 같은 :

01 :

function getNameAttribute(element) { 
    alert(element.name); //Or do something else with the name, `element.name` contains the value of the name attribute. 
} 

이는 onclick 핸들러에서 뭔가처럼 호출 할 것

Objective-C 코드로 다시 이름을 가져와야하는 경우 onclick 함수를 작성하여 name 속성을 해시 태그의 형태로 url에 추가 한 다음 요청을 트랩하고 구문 분석하여 UIWebView 대리자의 -webView:shouldStartLoadWithRequest:navigationType: 메서드입니다. 그러면 다음과 같이됩니다.

function getNameAttribute(element) { 
    element.href += '#'+element.name; 
} 

//Then in your delegate's .m file 

- (BOOL)webView:(UIWebView *)webView 
     shouldStartLoadWithRequest:(NSURLRequest *)request 
     navigationType:(UIWebViewNavigationType)navigationType { 

    NSArray *urlParts = [[request URL] componentsSeparatedByString:@"#"]; 
    NSString *url = [urlParts objectAtIndex:0]; 
    NSString *name = [urlParts lastObject]; 
    if([url isEqualToString:@"http://www.google.com/"]){ 
     //Do something with `name` 
    } 

    return FALSE; //Or TRUE if you want to follow the link 
} 
+0

누군가가 링크를 클릭하면 이름이 필요합니다. 하지만 JavaScript를 어떻게 사용하는지 모르겠습니다. 예를 들어 주시겠습니까? 감사! – Sveta

+0

업데이트 된 답변보기 – Kyle

관련 문제