SORU
27 Ocak 2013, Pazar


Nasıl stopPropagation için AngularJS bir Direktif yapabilir miyim?

"Twitter Bootstrap önlemek için" li içinde bir öğe (link) tıklandığında kapanmasını açılan gezinti çubuğu. stopPropagation için çalışıyorum Bu yöntemi kullanarak 8* *ortak gibi görünüyor.

Açısal olarak, bir Direktif bunu yapmak için bir yer gibi görünüyor? Var:

// do not close dropdown on click
directives.directive('stopPropagation', function () {
    return {
        link:function (elm) {            
            $(elm).click(function (event) {                
                event.stopPropagation();
            });
        }
    };
});

... ama yöntemi elemana ait değil:

TypeError: Object [object Object] has no method 'stopPropagation'

Yönetmelikte ben kravat ile

<li ng-repeat="foo in bar">
  <div>
    {{foo.text}}<a stop-propagation ng-click="doThing($index)">clickme</a>
  </div>
</li>

Herhangi bir öneriniz var mı?

CEVAP
27 Ocak 2013, Pazar


"Şu anda bazı direktifler (örneğin ng:tıklayın) olay yayılmasını durdurur. Bu birlikte çalışabilirlik gibi olayları yakalamak kullanan diğer çerçeveler ile engeller."- link

... ve bir Direktifi olmadan düzeltmek için mümkün olduğunu, ve sadece yapmak:

<a ng-click="doThing($index); $event.stopPropagation();">x</a>

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Canal de arkyoru

    Canal de ark

    18 Ocak 2007
  • Flash CS6 Video Tutorials for Beginners (Actionscript 3 Gaming)

    Flash CS6 Vi

    14 EYLÜL 2012
  • Google Chrome

    Google Chrom

    1 EYLÜL 2008