jQuery - dynamische div Höhe
Ich versuche, die Größe eines div auf pageload und Fenster Größe ändern. Der code unten wird platziert, bevor </body>
, und es funktioniert gut auf pageload, tut aber nichts auf Fenster Größe ändern. Getestet habe ich die resize-Funktion mit einer Warnung auslöst, auf die Größe, aber die Höhe bleibt unverändert.
<script type='text/javascript'>
$('#main-content') .css({'height': (($(window).height()) - 361)+'px'});
$(window).resize(function(){
$('#main-content') .css({'height': (($(window).height()) - 361)+'px'});
alert('resized');
});
</script>
update: nach einer langen Pause, habe ich entdeckt, was das problem verursacht. Ich bin mit einem jquery-Skript hinzufügen eines formatierten Bildlaufleiste auf der gleichen div wird verkleinert. Wenn ich einen Kommentar, alles passt Prima. Ich ve zog die scrollbar-Initialisierung die gleiche Funktion wie "resize", und versucht alle Varianten die ich mir denken kann.. noch nicht bekommen kann es arbeiten.
(die #main-content-div hat auch .scroll-Bereich-Klasse)
<script type='text/javascript'>
$(function(){
$('#main-content').css({'height':(($(window).height())-361)+'px'});
$('.scroll-pane').jScrollPane({scrollbarWidth:15, scrollbarMargin:15});
$(window).resize(function(){
$('#main-content').css({'height':(($(window).height())-361)+'px'});
});
});
</script>
Du musst angemeldet sein, um einen Kommentar abzugeben.
gelöst!
alle, die es brauchte, war jScrollPane entfernen, bevor die Berechnung der Höhe und re-Anwendung.
Uncaught TypeError: $(...).jScrollPane is not a function
... WasjScrollPane
? Seine plugin?Beachten Sie, dass das Fenster resize-Funktion wird nur ausgelöst, einmal, nachdem er das Fenster wurde in der Größe verändert. Es aktualisiert sich nicht während der Größenänderung, so dass, wenn Sie ziehen Sie den Fensterrand, um dies zu testen, ohne änderungen passieren wird, bevor Sie loslassen der Maus-Taste.
Stellen Sie außerdem sicher, dass Sie dies innerhalb von
$(document).ready()
wie diese:Hier ist ein arbeiten demo.
Nicht-Funktion ausführen, es sei denn, das Dokument ist die Höhe weniger als oder gleich der Fensterhöhe.
Hatte ich Probleme, wo der Inhalt fließen würde außerhalb der div.