Bir sayfada iki Bootstrap sekmesi var ve her sekmede bir liste görüntülenir. Ben her liste öğesi bir kare olmak istiyorum ve bunun Bootstrap kontrollü dinamik genişliğine eşit olacak şekilde her liste öğesinin yüksekliğini ayarlamak için bu angularjs direktifini yazdı: Ben bu sayfayı ilk sekmenin liste öğeleri yüklemekBu genişlik AngularJS yönergesini izlemeyi neden Bootstrap sekmelerini değiştirerek çalışmıyor?
app.directive('squareDiv', function() {
return {
restrict: "A",
link: function (scope, element,attr) {
scope.getWidth = function() {
return element.width();
};
scope.$watch(scope.getWidth, function (width) {
element.css({
height: width + 'px'
});
}, true);
}
};
});
Direktifin çalıştığı anlamına gelen kareler olarak görün. Ama başka bir sekmeyi tıkladığımda, liste öğeleri varsayılan 100 px yüksekliğe sahip. İlk sekmeye geri döndüğümde, liste öğeleri bile şimdi varsayılan yüksekliğe sahip.
Burada yanlış olan ne oluyor?
GÜNCELLEME 1: http://plnkr.co/edit/Pc7keuRXR9R3U6AhZmFE?p=preview
GÜNCELLEME 2: UI-Bootstrap yerini Bootstrap ile
Plunker hala aynı sorun var Burada
bu sorunu gösteren bir plunker link: sekme anahtarı yerine ilişkin bir saatlePlunker: http://plnkr.co/edit/rLE1wUAHKzJP6FVnGF6b?p=preview
GÜNCELLEME 3 genişlik değişiminin orijinal çözümü için geçici çözüm (doğru saatin düzgün çalışmadığı; pencere yeniden boyutlandırma nedeniyle genişlik değişikliklerine uyum sağlamak için ayrı bir yönerge kullanması gerekecektir): http://plnkr.co/edit/Y4Goe0cexq979JsIcBxl?p=preview
Genişlik saatinin neden sekme anahtarından sonra düzgün çalışmayı durdurduğunu anlamak isterim.
sekme gizli olduğu için olabilir olduğunu. Her neyse, bir plunker falan yaparsan yardımcı olur. –
Bu doğru, bir plunker büyük yardım olabilir! –
Bu davranışı gösteren bir plunker bağlantısı aşağıdadır: http://plnkr.co/edit/Pc7keuRXR9R3U6AhZmFE?p=preview Yönergesi, sekme 1'de değil sekmede çalışır 2 – Price