Я использую вариацию jquery idtabs на вкладке согласования/слайда.
Высота слайда задается содержимым содержимого # tab1, однако это часто не самая высокая вкладка -as, содержимое результата на других вкладках может быть не полностью видимым.
Код слайда выглядит следующим образом:
<script>
$(function(){
var slideHeight = 305; // px
var defHeight = $('#wrap').height();
if(defHeight >= slideHeight){
$('#wrap').css('height' , slideHeight + 'px');
$('#read-more').append('<a href="#">SHOW MORE</a>');
$('#read-more a').click(function(){
var curHeight = $('#wrap').height();
if(curHeight == slideHeight){
$('#wrap').animate({
height: defHeight
}, "normal");
$('#read-more a').html('SHOW LESS');
$('#gradient').fadeOut();
}else{
$('#wrap').animate({
height: slideHeight
}, "normal");
$('#read-more a').html('SHOW MORE');
$('#gradient').fadeIn();
}
return false;
});
}
});
</script>
Я убежден, что использование варианта в исходном коде должно решить проблему, но я могу, похоже, успешно слить сценарии.
<script>
$(function(){
var heighest = 0;
$('#wrap').each(function(){
heighest = ($(this).height() > heighest) ? $(this).height() : heighest;
});
$('#wrap').css('height',heighest + 'px');
});
</script>
Любая помощь/предложения будет оценена -this не моя область, я человек с картинками.
Благодарю.
Я думаю, вы ищете что-то вроде этого. Обратите внимание, что нет элемента #wrap
, и даже если бы он был, $('#wrap').each(...)
#wrap
$('#wrap').each(...)
всегда просто воздействует на один элемент. Кроме того, рассмотрите, какие элементы должны отображаться в видимой области
<script>
$(function() {
var slideHeight = 50, // px
wrapHeight = $('#wrap3').height();
$('#wrap3 .usual2 div').each(function(){
wrapHeight = ($(this).outerHeight() > wrapHeight) ? $(this).outerHeight() : wrapHeight;
});
defHeight = wrapHeight + slideHeight;
if(defHeight >= slideHeight) {
(...etc)