2013-11-25 4 views
11

Dies ist, was ich auf meinem HTML5 habenAnker-Tag nicht in Safari arbeiten (ios) für iPhone/iPod Touch/iPad

<div class="google-play"> 
    <a href="http://example.com" role="button"> 
     <img src="img/google-play-btn.png"/>                  
    </a> 
</div> 

und funktioniert auf Chrom, FF, android aber scheint nicht zu funktionieren auf dem iPad.

+1

Und weil du nicht arbeitest meinst du was genau? –

+0

Sie klicken und nichts passiert – Monica

+0

Ich habe gerade Ihre HTML-Seite bei Safari geöffnet, angeklickt und der Link wurde wie erwartet verarbeitet. Gleiches mit http://www.w3schools.com/tags/tryit.asp?filename=tryhtml5_a_href_anchor. Sie müssen genau erklären, was das Problem ist. –

Antwort

14

Verwenden Sie touchend Ereignis über jQuery auf alle Anker-Tags. Zum Beispiel:

$(function() {  
    $('a').on('click touchend', function() { 
     var link = $(this).attr('href'); 
     window.open(link,'_blank'); // opens in new window as requested 

     return false; // prevent anchor click  
    });  
}); 

Wenn Sie nur die oben iPhone und iPad spezifische Funktion zu machen, um zu sehen, ob das „Gerät“ ist ein iPad, iPhone, usw. Wie so:

$(function() { 

    IS_IPAD = navigator.userAgent.match(/iPad/i) != null; 
    IS_IPHONE = (navigator.userAgent.match(/iPhone/i) != null) || (navigator.userAgent.match(/iPod/i) != null); 

    if (IS_IPAD || IS_IPHONE) { 

     $('a').on('click touchend', function() { 
      var link = $(this).attr('href'); 
      window.open(link,'_blank'); // opens in new window as requested 

      return false; // prevent anchor click  
     });  
    } 
}); 
+0

funktioniert der Klick immer noch für Chrome und Firefox? – Monica

+0

Ja, Ma'am! Cross-Plattform-Lösung mein Freund. :) –

+0

ok, gut danke! – Monica

Verwandte Themen