任何人都可以帮助我,我不明白错误在哪里。
这是我的jQuery:
function altezzadotgrey(){
$('.views-field-title').each(function(){
var aaltezzadotgrey = $(this).outerHeight();
if ($(this).outerHeight() > 40) {
$(this).css("margin-top", "-45px");
}
});
}
这是我的HTML:
<div class="views-row">
<div class="views-field-title">
<span class="field-content"><a href="">a</a></span>
</div>
</div>
<div class="views-row">
<div class="views-field-title">
<span class="field-content"><a href="">b</a></span>
</div>
</div>
<div class="views-row">
<div class="views-field-title">
<span class="field-content"><a href="">c</a></span>
</div>
</div>
<div class="views-row">
<div class="views-field-title">
<span class="field-content"><a href="">d</a></span>
</div>
</div>
我认为each()
可能存在问题。
答案 0 :(得分:1)
jQuery.css使用“DOM样式”属性而不是CSS样式,所以你这样:
$(this).css("marginTop", -45);
见这里:http://jsfiddle.net/4upSX/1/
实际上它也适用于“margin-top”...所以你确定你的'.views-field-title'实际上高于40px?
答案 1 :(得分:0)
function altezzadotgrey(){
$('.field-content').each(function(){
var h= $(this).css('height');
if (parseInt(h) > 40) {
$(this).css("margin-top","-45px");
}
});
}
答案 2 :(得分:0)
你只需要在身体负荷上调用你的功能
$( function() {
altezzadotgrey();
});
function altezzadotgrey(){
$('.views-field-title').each(function(){
var aaltezzadotgrey = $(this).outerHeight();
if ($(this).outerHeight() > 40) {
$(this).css("margin-top", "-45px");
}
});
}
其他一切都是正确的