2016-03-19 20 views
0

Aşağıdaki davranışları anlamaya çalışıyorum.Bağlantı hedefi _blank, tarayıcı tarafından engelleniyor

ben basit çapa etiketi oluşturduk:

<a href="/example/link" target="_blank"> 
    <img src="/images/layout_open.png"> 
    <span class="open-new-tab">Open in new tab</span> 
</a> 

Güncelleme: Bunlar <a> etiketlerin eşzamansız oluşturulur. Bir AJAX istekleri sonrası, JS, <a> etiketlerini oluşturur.

Sorun, Google Chrome'un açılış sekmesini tıkanıklıklı bir pop gibi sanki engellemesidir.

Bu davranışı nasıl önleyebilirim? <a> etiketini veri özniteliğine ekleyebileceğimiz diğer StackOverflow sorularını okudum ve jQuery aracılığıyla bir olayı ona bağlayarak JS kullanarak yeni bir pencere açabilirim.

Neyi anlayamadığım benim örneğimde neden çalışmıyor ve diğer sitelerde engellenmiyor. Aynı alana ve ana bilgisayara bağlanıyor.

Bunun nedeni, açıklığa veya img'ye bastığımda, olayın kabarcıklanma aşamasında tetikleneceği, dolayısı ile de doğrudan bir eylem değil dolaylı bir eylem olduğu sonucuna varmış olabilir.

Bunun nedeni nedir ve nasıl önleyebilirim?

Teşekkür

Güncelleme:

ben çözüm bulduk düşünüyorum. Sorun, görüntülerin daha önce yapmadığım ona bağlı onclick olayı olmasıdır. Sadece bu gibi:

<a href="/example/link" target="_blank"> 
    <img src="/images/layout_open.png" onclick="showFullImage()"> 
    <span class="open-new-tab">Open in new tab</span> 
</a> 

Henüz bu denemedim ama @Siderite önerildiği gibi, bu engelleme düzenli tarayıcı davranışı değildi. Bu yüzden, Google Chrome'un bunu dolaylı bir eylem olarak işaretleyeceğini düşünüyorum.

Yarın deneyeceğim ve Güncelleme nr.

2 Bu bir tarayıcı normal davranışı, ancak agresif popup'ları engellemek için çalışır daha muhtemel bir uzantısı değil hepinizi

+1

Sorunsuz çalışması gerekir. –

+1

Bir kullanıcı eylemi değil, kod ile tıklanıyor musunuz? – epascarello

+0

Resmi veya resmi tıklattıktan sonra. Tıklama etkinliğini Javascript aracılığıyla çağırmak istemiyorum. –

cevap

2

ederiz.

Chrome uzantılarınızı chrome: // extensions/url adresine giderek inceleyin.

+0

Sorumu güncellendi. –

+0

Cevabım duruyor. DOM'ı ne değiştirirse değiştirsin, sonunda bir görüntü ve bir span içeren bir çapa elemanına sahip olursun. Üzerine tıklamak, sayfayı başka bir pencerede veya sekmede açmalıdır. Bu, tarayıcının varsayılan ve çok temel işlevselliğidir. Yani ya onu engelleyen bir uzantınız var, ya da üzerine tıkladığınızda çalıştırılan Javascript kodu var. –

+0

Siderite ile birlikteyim.Lütfen tüm uzantıları devre dışı bırakın ve kodunuzu çalıştırmayı deneyin. – IzzyCooper

İlgili konular