2010-07-01 4 views
0

UIWebView에서 외부 웹 페이지를로드하고 있습니다. 웹 페이지가로드되면 웹 페이지에 대한 제안/정보가있는 경고 상자 (확인 및 취소 버튼 포함)가 있습니다. 웹 페이지가 내 아이폰 앱의 UIWebView 구성 요소에로드 될 때이 경고 상자를 차단하고 싶습니다. 내 코드는 어떻게 구현할 수 있습니까?UIWebView에서 경고 상자 비활성화


답장을 보내 주셔서 감사합니다. 나는 외부 웹 페이지에 대한 책임이 없다. (그러나 나는 관심 웹 페이지 소유자에게 다음 요구 사항과 관련된 변경을 요청할 수있다.) 요구 사항은 내 iPhone 응용 프로그램에 대한 알리미 상자 인 Alert Box가 iPhone Safari 브라우저에서 웹 페이지를 볼 때 표시 될 수 있지만 동일한 웹 페이지를 사용하는 UIWebView에서는 표시되지 않습니다. 나는 iPhone Safari와 UIWebView가 포함 된 iPhone 응용 프로그램에서 동일한 웹 페이지 URL을 사용하고 있습니다. 그래서 요구 사항은 아이폰 앱에서 동일한 웹 페이지를 볼 때 (UIWebView 내에서) 아이폰 사파리에서 웹 페이지를 볼 때 경고 상자를 보여주고 경고 상자를 표시하지 않는다는 것입니다. 희망을 분명히 설명했습니다. 이에 대한 해결책을 제시하십시오.

+0

의 사용 가능한 복제 [있는 UIWebView는 : 나는 웹 페이지 내에서() 자바 스크립트 경고를 비활성화 할 수 있습니다 (https://stackoverflow.com/questions/3400429를/uiwebview-can-i-disable-the-javascript-alert-any-any-any-web-page) – alpere

답변

0

당신은이 외부 웹 페이지의 책임자입니까? 그렇다면 다음과 같이 할 수 있습니다.

UIWebView로드 externalpage.html?noalert 대신 externalpage.html을 입력하십시오. ,

if(!document.location.search || document.location.search.substring(1) != 'noalert') { 
    alert('Boo!'); 
} 
1

당신이 제공하는 자바 스크립트 어느있는 페이지에 당신이 원하는 무엇이든을 변경할 수 있습니다 stringByEvaluatingJavaScriptFromString: 방법을 사용하여 : 그런 다음 externalpage.html에이 쿼리 문자열 변수가 존재하는지 여부를 확인 할 수 있으며, 그렇지 않은 경우에만 alert()을 보여 그래서 당신은 과부하 또는 중복

0

이는 fai는 자바 스크립트가 기본 UIAlertViews에 경고를 전부입니다 번역 네이티브 엔드에서 쉽게 차단할 수 있습니다. UIAlertView.h을 보면 편리하게 호출되는 알림을 표시하는 공개 방법은 하나만 있습니다 : - (void)show;.

@interface UIAlertView (Blocker) 
@end 

#import "UIAlertView+Blocker.h" 

@implementation UIAlertView (Blocker) 

- (void)show { 
    return; 
} 
@end 

당신은 여기에 답변을 찾을 수 있습니다 https://stackoverflow.com/a/21698251/2377378

관련 문제