Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/75.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中的函数指定目标_Jquery_Animation - Fatal编程技术网

为jQuery中的函数指定目标

为jQuery中的函数指定目标,jquery,animation,Jquery,Animation,我想有多个动画火在鼠标上方的一些导航按钮。我想指定一个函数中的所有动画和参数,并在鼠标停留在每个按钮上时调用它。到目前为止,我只能将其应用于按钮的所有实例。我尝试在函数中使用“(this)”,但它不起作用 <script type="text/javascript"> $(document).ready(function(){ function navmouseover1() { $(this).animate({ left:"+=10

我想有多个动画火在鼠标上方的一些导航按钮。我想指定一个函数中的所有动画和参数,并在鼠标停留在每个按钮上时调用它。到目前为止,我只能将其应用于按钮的所有实例。我尝试在函数中使用“(this)”,但它不起作用

<script type="text/javascript">
    $(document).ready(function(){
        function navmouseover1() {
            $(this).animate({ left:"+=10",top:"+=10",width:"-=20px",height:"-=20px",opacity:1 },100 );   
        }
        $("#nav1").mouseover(function() { navmouseover1(); });
        $("#nav2").mouseover(function() { navmouseover1(); });
    });

$(文档).ready(函数(){
函数navmouseover1(){
动画({左:“+=10”,顶:“+=10”,宽:“-=20px”,高:“-=20px”,不透明度:1},100);
}
$(“#nav1”).mouseover(function(){navmouseover1();});
$(“#nav2”).mouseover(function(){navmouseover1();});
});

您可以使用它,但需要将事件绑定到您的函数,而不是将其包装到另一个函数中。例如:

$('#nav1').mouseover(navmouseover1);

您现在遇到的问题是,事件侦听器的“this”变量设置正确,但是,由于您随后从该事件侦听器内部调用函数,因此它的作用域不同。

Oh,wow。只要你知道怎么做就很容易了!谢谢我如何将它们像:$('nav1').mouseover(navmouseover1);。mouseout(navmouseout1);等等?它看起来像$('nav1').mouseover(navmouseover1.mouseout(navmouseout1);