0

如果这在其他地方得到了回答,请原谅我——我一直在疯狂地研究,但我发现的“修复”没有一个对我有用。

基本上,我使用 jQuery.animate() 将 li 标签内的 div 向下移动约 150px。它以顶部开始:-150 并使用溢出隐藏:隐藏。在包含 li 的鼠标悬停时,它应该动画到 top:0。这一切在 Chrome 和 FF 中都非常有效,但在 IE 中,我什么也得不到。我尝试使用 IE 开发人员工具栏,并在没有任何错误的情况下进行了跟踪。似乎由于某种原因,“顶部”属性在动画函数中永远不会改变,但我不明白为什么或需要改变什么来修复它。非常感谢任何帮助。

这是代码:

/edit le final

最后通过使用动画的 div 的“height”属性而不是“top”来解决这个问题。再加上 padding 和 border-width 属性,我基本上可以得到相同的效果。仍然不完全确定为什么“top”属性不起作用,但是 c'est la vie。

4

1 回答 1

1

在 IE 8 中测试的Hiya工作演示:) http://jsfiddle.net/EbRgW/ http://jsfiddle.net/EbRgW/show/

好读:http ://api.jquery.com/jQuery.noConflict/

var $jq = jQuery.noConflict();会在你的情况下解决问题。

这会有所帮助,

jQuery代码

$(document).ready(function() { //http://api.jquery.com/jQuery.noConflict/
    var $jq = jQuery.noConflict();
    $jq('.accordion li').hover(function() {
        $jq(this).children('.accordion-textbox').stop().animate({
            top: '0px'
        }, 600);
    }, function() {
        $jq(this).children('.accordion-textbox').stop().animate({
            top: '-150px'
        }, 200);
    });
});
于 2012-05-19T05:40:47.103 回答