一般来说,我对 js 很陌生,但从我读过的教程来看,这似乎应该可行。我只是想使用这个插件来使 3 个盒子的高度相等......如果这很重要,盒子有边框半径和其他一些样式。
脚本代码:
$.fn.equalHeights = function(px) {
$(this).each(function(){
var currentTallest = 0;
$(this).children().each(function(i){
if ($(this).height() > currentTallest) { currentTallest = $(this).height(); }
});
if (!px && Number.prototype.pxToEm) currentTallest = currentTallest.pxToEm(); //use ems unless px is specified
// for ie6, set height since min-height isn't supported
if ($.browser.msie && $.browser.version == 6.0) { $(this).children().css({'height': currentTallest}); }
$(this).children().css({'min-height': currentTallest});
});
return this;
};
// just in case you need it...
$.fn.equalWidths = function(px) {
$(this).each(function(){
var currentWidest = 0;
$(this).children().each(function(i){
if($(this).width() > currentWidest) { currentWidest = $(this).width(); }
});
if(!px && Number.prototype.pxToEm) currentWidest = currentWidest.pxToEm(); //use ems unless px is specified
// for ie6, set width since min-width isn't supported
if ($.browser.msie && $.browser.version == 6.0) { $(this).children().css({'width': currentWidest}); }
$(this).children().css({'min-width': currentWidest});
});
return this;
};
页面代码:
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js"></script>
<script>window.jQuery || document.write('<script src="js/vendor/jquery-1.9.0.min.js"><\/script>')</script>
<script src = "js/jQuery.equalHeights.js"></script>
<script type="text/javascript">
$(document).ready(function(){
$(function(){ $('#equalize').equalHeights(); });
});
</script>
我已经将“equalize”的 id 应用于我的 div,其中包含我想要相等高度的三个框。好像没有效果,IE抛出脚本错误“$.browser.msie is null or not an object”。
如果适用,我正在使用 xampp 在 php 页面上本地运行它。
我很确定这只是我的一些愚蠢的新手错误,我认真地花了大约 2 个小时试图追赶它,然后我放弃了。如果有人能插话,我真的很感激!
谢谢,乔