【发布时间】:2011-03-17 04:35:12
【问题描述】:
这是我使用 jQuery 为 div 设置动画的 sn-p 代码:
$('.row0').hover(function(){
var markeranim = $('.marker0');
var shadowanim = $('.markerShadow0')
var markertop = markeranim.position().top;
var shadowtop = shadowanim.position().top;
var shadowleft = shadowanim.position().left;
$('tr.row0').addClass('rowHoveredEven');
markeranim.animate({ top: [markertop - 20 + 'px'] }, 250, 'linear',
function() {
markeranim.animate({ top: [markertop + 'px'] }, 250, 'linear',
function() {
markeranim.animate({ top: [markertop - 10 + 'px'] }, 200,
'linear', function() {
markeranim.animate({ top: [markertop + 'px'] }, 200);
});
});
});//close animation
这适用于所有浏览器,但 IE(当然)除外。 IE 给出错误提示:“'position().top' 为 null 或不是对象”以及:“'position().left' 为 null 或不是对象”。任何人都知道为什么或以其他方式我可以抓住这些 IE 会很好玩的属性吗?
【问题讨论】:
-
您能否发布 html / css 以便我们验证 row0 ?
-
自己检查一下可能是最简单的。这是我正在开发的枪支经销商定位器。访问 www.axtsweapons.com,点击左上角的登录并输入用户:“test” 密码:“1234”,然后转到 /ffllocator,输入邮政编码并尝试一下。使用除 IE 以外的任何浏览器,当您将鼠标悬停在关联的 tr 上时,地图上的标记都会动画。谢谢!
-
仅供参考-您不需要严格地在 $.css() 中附加“px”
标签: jquery internet-explorer jquery-selectors