Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
jQuery 1.7-hover-won';行不通_Jquery_Hover_Jquery Hover - Fatal编程技术网

jQuery 1.7-hover-won';行不通

jQuery 1.7-hover-won';行不通,jquery,hover,jquery-hover,Jquery,Hover,Jquery Hover,我有一个代码,一个简单的悬停效果,在jQuery1.4中工作良好,但在jQuery1.7中不工作 代码如下: jQuery(document).ready(function() { /* When a thumbnail is hovered over do shine */ $('.large_thumb').hover(function() { $(this).find(".large_thumb_shine").css("background-positio

我有一个代码,一个简单的悬停效果,在jQuery1.4中工作良好,但在jQuery1.7中不工作

代码如下:

jQuery(document).ready(function() {
    /* When a thumbnail is hovered over do shine */
    $('.large_thumb').hover(function() {
        $(this).find(".large_thumb_shine").css("background-position", "-167px 0");
        $(this).find(".large_thumb_shine").stop().animate({
            backgroundPosition: '167px 0'
        }, 600);
    }, function() {
        $(this).find(".large_thumb_shine").stop().animate({
            backgroundPosition: '167px 0'
        }, 600);
    });
});​
它应该做什么:

onmouseover
上的
bg位置
上移动一个类似PNG的透明光环。不应在
onmouseout
上重复此效果,因此第二个函数

出于某种原因,这个超基本代码在最新的jQuery1.7中不起作用,但在1.4中仍然起作用

我已经阅读了文档,似乎使用了正确的方法,hover。我的代码中哪里有问题

编辑:

JSFIDLE


您可以尝试使用jQuery Animate函数和“无用”CSS属性(即边框间距,这可能是您永远不会使用但不会影响布局的):

演示:

jQuery:

jQuery(document).ready(function() {

    /* When a thumbnail is hovered over do shine */
    $('.large_thumb').hover(function() {
        var shine = $(this).find(".large_thumb_shine");

        $(shine).css("background-position", "-167px 0");
        $(shine).stop().animate({
            "border-spacing": -167
        }, {
            step: function(now, fx) {
                $(shine).css("background-position", now + "px 0px");
            },
            duration: 600
        });



    }, function() {
        var shine = $(this).find(".large_thumb_shine");

        $(shine).stop().animate({
            "border-spacing": -167
        }, {
            step: function(now, fx) {
                $(shine).css("background-position", now + "px 0px");
            },
            duration: 600
        });
    });
});​

也许你会在这里找到答案:所以bg位置不能用1.7设置动画?从1.4跳到1.7有很多不同。版本1.6破坏了很多东西。你知道我如何在1.7中实现同样的功能吗?是的,thx的工作方向是错误的,我无法修复它,对于任何感兴趣的人,我通过删除“px”和第二个值来修复原始代码,这似乎会在这里引起问题工作示例: