2012-11-26 28 views
6

engellemek Kendi başıma yönlendirme olaylarını ele almam gerekiyor. Bununla, bir href olayını halledebilmem ve yönlendirmeyi kendim yapabilmem gerekiyor. Aşağıdaki kodu kullanarak ediyorumSencha Touch 2 - Sencha Touch 2 uygulamasında a-href olaylarını (a-href olay işleme)

: Yukarıda belirtilen fonksiyonlar işin (stopEvent, stopPropagatioon preventDefault) hiçbiri ile

Ext.Viewport.element.addListener("tap", function(e) { 
    e.stopEvent(); 
    e.stopPropagation(); 
    e.preventDefault(); 
    var href = e.target.getAttribute("href"); 
    // ... my code ... 
}, this, {delegate: "a"}); 

. Uygulama, uygulama web görünümümdeki bağlantıyı her zaman açar.

Href açılış bağlantılarını devre dışı bırakmanın herhangi bir yolu var mı?

cevap

12

Genellikle bu bu şekilde yaparsak:

Ext.Viewport.element.dom.addEventListener('click', function (e) { 
    if (e.target.tagName !== 'A') { 
     return; 
    }; 
    e.preventDefault(); 
    var href = e.target.getAttribute('href'); 
}, false); 

Try here

Umut bu

+0

Bu edilir yardım etti! Çok teşekkürler! – MalcomCZ

+1

Güzel, bu benim de sorunumu çözdü. Sencha Touch 2.2.1'in 8/13/2013 tarihinden itibaren olduğunu söylemek için stackoverflow itibar puanlarını kaybetmek istemiyorum. Bu, bir yükseltme projesi sırasında karşılaştığım birçok sorundan sadece bir tanesiydi. Kinda bana IE'yi hatırlatıyor. #endrant. –