Ich baue eine kleine App und ich benutze AngularJS. Innerhalb der App brauche ich ein reduzierbares Element und die Verwendung von Twitter Bootstrap wäre so einfach wie das Hinzufügen der Bibliothek und einiger Tags auf meinem Zielelement und dem Auslöser.Etwas wie Bootstrap zusammenklappbar mit eckigen
Aber ich versuche nicht, andere externe Bibliotheken wie Bootstrap oder andere zu laden, so dass ich versuche, das gleiche Verhalten mit kantigem zu erreichen:
$scope.collapse = function(target) {
var that = angular.element(document).find(target),
transitioned = {
'WebkitTransition' : 'webkitTransitionEnd',
'MozTransition' : 'transitionend',
'OTransition' : 'oTransitionEnd otransitionend',
'msTransition' : 'MSTransitionEnd',
'transition' : 'transitionend'
},
_transitioned = transitioned[ Modernizr.prefixed('transition') ],
height = that.outerHeight(true);
if (angular.element(that).hasClass("in")) {
that.height(0);
} else {
that.height(height);
};
that.on(_transitioned, function() {
that.toggleClass("in");
});
};
Wie Sie mich versuche, um den Übergang zu sehen die Höhe (da das Element einen Übergang auf der Höhe hat) und am Ende fügen Sie einfach die Klasse in
hinzu. Aber das funktioniert nicht sehr gut, denn wenn ich am Übergangsende höre, wird es an jedem Übergangsende innerhalb dieses Elements ausgelöst.
Ich brauche Hilfe mit diesem, wie kann ich das Bootstrap zusammenklappbar nur mit eckigen schreiben? Ich brauche nicht die Ereignisse, die bootstrap hat wie auf shown
, oder show
, hide
, ich muss nur eine einfache Kollaps des Elements mit Übergang auslösen und halten meine Elemente Höhe dynamisch (Ich möchte nicht eine feste Höhe, sonst Ich würde einfach CSS verwenden, um den Kollaps zu erreichen). Ich muss nur in die richtige Richtung geortet werden :)
Wie ich in meiner Beschreibung erwähnt, 'collapsable.showMe {height: 100px; } ', sollte die Höhe' auto' sein, damit ich meine Inhaltshöhe dynamisieren kann, weil mehr Elemente nachträglich angehängt werden könnten ... – Roland
Deshalb wirst du das Plugin von jemand anderem benutzen wollen. Was Sie tun müssen, ist die Höhe Ihres inneren Inhalts mit Javascript überprüfen und dann diese Höhe mit CSS im laufenden Betrieb einstellen. 'auto' funktioniert nicht mit CSS-Übergängen in irgendeinem Browser, den ich kenne. –
War das nicht, was ich gerade in der Beschreibung gesagt habe? Die automatische Höhe würde in diesem Fall nicht funktionieren, wenn ich CSS-Übergänge möchte. Deshalb habe ich versucht, zuerst die Höhe zu setzen und dann die 'in'-Klasse hinzuzufügen, die' height: auto' hat. Nur die Verwendung am Ende des Übergangs funktioniert nicht. Die Höhe des Elements wird nicht funktionieren, da die Klasse 'collapse' es auf' 0px' setzt. Deshalb frage ich hier, ob es einen Weg gibt, es ohne die Ereignisse zu tun, die Bootstrap hat und nur den Kollaps hat. – Roland