如何创建涉及3个div的jquery函数?

时间:2011-06-29 11:44:52

标签: jquery function html

我需要一些帮助来创建一个为所选元素做同样事情的函数。

我有#design1#design1servicetext和#design1servicebutton。

代码:

//Service hover//
$('#design1').mouseenter(function (){
    $('#design1servicetext').css('background-position', '0 -91px')  
    $('#design1servicebutton').css('background-position', '0 -33px')
    })
               .mouseleave(function (){
    $('#design1servicetext').css('background-position', '0 0px')
    $('#design1servicebutton').css('background-position', '0 0px')});
//Service hover end//

如何创建一个函数,我必须选择3个div才能制作动画?

我想要一个像

这样的功能
animatebg('#design1','#design1servicetext','#design1servicebutton');

有人可以帮帮我吗?我已经尝试了很多功能教程,但没有一个能用于我想做的事情。非常感谢你提前了!

3 个答案:

答案 0 :(得分:1)

function animatebg(param1,param2,param3){
    $("#"+param1).mouseenter(function (){
    $("#"+param2).css('background-position', '0 -91px')  
    $("#"+param3).css('background-position', '0 -33px')
    })
               .mouseleave(function (){
    $("#"+param2).css('background-position', '0 0px')
    $("#"+param3).css('background-position', '0 0px')});
}

答案 1 :(得分:1)

嗯,试试这个:

function animatebg( jq1, jq2, jq3 ) {
    $('#'+jq1).mouseenter(function() {
        $('#'+jq2).css('background-position', '0 -91px')  
        $('#'+jq3).css('background-position', '0 -33px')
    }).mouseleave(function() {
        $('#'+jq2).css('background-position', '0 0px')
        $('#'+jq3).css('background-position', '0 0px')});
}

答案 2 :(得分:0)

我做了一个无限参数函数,因此您可以选择更少或更多的选择器,请参阅完整示例的链接http://jsfiddle.net/AcUCm/

这里有我的功能:

function animatebg() {
        for (var i = 0; i < arguments.length; i++) {
            var val = arguments[i].toString();

            $(val).live('mouseenter', function() {
                $(this).css('background-position', '0 -91px')
                $(this).css('background-position', '0 -33px')
            }).live('mouseleave', function() {
                $(this).css('background-position', '0 0px')
                $(this).css('background-position', '0 0px')
            });

        }
}

用法(准备好文件)

$(function() {
animatebg('#design1', '#design1servicetext', '#design1servicebutton');
});