我将我的元素“.portfolio-set-height”的高度设置为alle这些元素的最高高度(它们具有不同的高度),然后我将此高度用作另一个元素的min-height。附加的代码适用于此。但是当窗口调整大小时,我无法让jquery重新运行脚本。有什么想法吗?
(我已经尝试$(window).resize(function()
但没有运气)
$(document).ready(function() {
var maxHeight = -1;
$('.portfolio-set-height').each(function() {
maxHeight = maxHeight > $(this).height() ? maxHeight : $(this).height();
});
$('.portfolio-set-height').each(function() {
$(this).height(maxHeight);
});
});
$(document).ready(function() {
$(".work-slider").css("min-height", function(){ return $(".portfolio-set-height").height() });
});
答案 0 :(得分:0)
您在$(文件).ready中指定的功能是本地可用的。当$(document).ready一次被触发时,代码无法从外部访问。您应该在$(document).ready()之外指定方法。 E.g:
$(document).ready(function(){ready1();});
$(document).ready(function(){ready2();});
var ready1 = function () {
var maxHeight = -1;
$('.portfolio-set-height').height('');
$('.portfolio-set-height').each(function() { maxHeight = maxHeight > $(this).height() ? maxHeight : $(this).height(); });
$('.portfolio-set-height').each(function() { $(this).height(maxHeight); });
}
var ready2 = function () {
$(".work-slider").css("min-height", function(){ return $(".portfolio-set-height").height() });
}
$(window).resize(function(){ ready1(); ready2(); });
答案 1 :(得分:-1)
检测窗口大小调整的唯一功能是.resize。您需要在JQuery中使用.resize:http://api.jquery.com/resize/
$(window).resize(function() {
// the window has been resized, make changes
});
如果这不是真的,那么你的逻辑就是proglem。发布jsfindle复制粘贴。
这是一个jsFidel:http://jsfiddle.net/uVkrS/7/