Reputation: 832
I am getting 2 errors from jslint when trying to use the script below, the offending lines are:
rowDivs = new Array(); The array literal notation [] is preferable. Now I tried changing this to Array([]) it removes the error but not sure if this is correct?
topPosition = 0; Expected an assignment or function call and instead saw an expression
Anybody have any ideas please?
equalheight = function (container) {
var currentTallest = 0,
currentRowStart = 0,
rowDivs = new Array[];
$el,
topPosition = 0;
$(container).each(function () {
el = $(this);
$($el).height('auto');
topPostion = $el.position().top;
if (currentRowStart != topPostion) {
for (currentDiv = 0; currentDiv < rowDivs.length; currentDiv++) {
rowDivs[currentDiv].height(currentTallest);
}
rowDivs.length = 0; // empty the array
currentRowStart = topPostion;
currentTallest = $el.height();
rowDivs.push($el);
} else {
rowDivs.push($el);
currentTallest = (currentTallest < $el.height()) ? ($el.height()) : (currentTallest);
}
for (currentDiv = 0; currentDiv < rowDivs.length; currentDiv++) {
rowDivs[currentDiv].height(currentTallest);
}
});
};
$(window).load(function () { equalheight('.equal'); });
$(window).resize(function () { equalheight('.equal'); });
Upvotes: 0
Views: 482
Reputation: 14053
Your syntax is wrong and you've got an extra semi-colon:
var currentTallest = 0,
currentRowStart = 0,
rowDivs = [],
$el,
topPosition = 0;
Upvotes: 3