2012-07-16 4 views
2

iPhone 앱을 만드는 회사에서 일하고 있으며, 웹 페이지를 제어하는 ​​웹보기에 표시하려고합니다. 그래서 내가 제공하는 것은 URL이고, 나는 그들이 돌려 준 페이지를 커스터마이징하기위한 특정 매개 변수를 사용합니다. (내 페이지가 iFrame 또는 일부 다른 마크 업과 함께 제공 될 수 있습니다.) 문제는 해당 웹 페이지에서 링크가 모바일에 열려있는 링크 인 경우 웹보기에서 여는 것입니다 사파리 또는 다른 웹보기. href 태그의 대상을 _blank, _self, _parent_top으로 변경하려고 시도했습니다.href 태그가 새 웹보기 나 모바일 사파리에서 열리지 않습니다.

확실하지 않은 경우 앱을 제어 할 수 없습니다. 그래서 나는 [UIApplication openURL:[NSURL URLWithString:myLink]]과 같은 것을 시도 할 수 없다. 나는 돌아 오는 페이지의 내용에 대해서만 통제권을가집니다.

제안 사항?

답변

0

동일한 웹보기 내에 있으면 href를 사용하지 않아야합니다. 대신 ontouchstart 이벤트를 사용하십시오. 예 :

<a ontouchstart="javascript:window.location = '../abc.html';">Click here</a> 

는 얼마 뒤, 나는 아이 패드에서 검색하는 경우에만, 내하는 HREF는 ontouchstart 이벤트로 변환되었는지 확인하기 위해, 자바 스크립트 기능을 밑도는.

function clearLinks() 
{ 
var isiPad = navigator.userAgent.match(/iPad/i) != null; 
if(isiPad) 
    { 
    var obj = document.getElementById('body').getElementsByTagName('a'); 
    for(var i =0; i<obj.length; i++) 
      { 
      var url = obj[i].getAttribute('href'); 
       if(url.indexOf("javascript")==-1) 
       { 
       obj[i].setAttribute('ontouchstart', "window.location='" + url + "'"); 
       obj[i].setAttribute('href', 'javascript:function(){return false;}'); 
       } 
      } 
    } 

} 
+0

매우 좋습니다. 나는 이것을 시도 할 것이다. 고마워요 !! –

관련 문제