2011-11-21 93 views
3

我有一個div這可以延長點擊的高度。 jQuery的代碼如下所示:帶觸發按鈕的動畫製作

$('.contact-click').click(function() { 
    $('#rollout').animate({ 
     height: "375", 
    }, 500); 
}); 

$('a.close').click(function() { 
    $('#rollout').animate({ 
     height: "0", 
    }, 500); 
}); 

我想有一個觸發按鈕而不是開口的a按鈕和關閉div。但我不明白如何做到這一點。對於slide()函數,有一個觸發器選項,但不適用於動畫。爲什麼? 感謝您的幫助

+0

你是什麼意思'對於幻燈片()函數有一個觸發選項? –

回答

0

或者你只是ü一個按鈕,並使用切換。 例子:

<input type="button" id="triggerMe" value="Open/Close" /> 

並使用撥動,像這樣:

$('#triggerMe').toggle(function(){ 
    $('#rollout').animate({ 
     height: "375", 
    }, 500); 
    },function(){ 
    $('#rollout').animate({ 
     height: "0", 
    }, 500); 
    } 
); 

http://api.jquery.com/toggle/

在N OUT! 編輯這裏的示例http://jsfiddle.net/Xq63U/

+0

是的。非常感謝你。這就是我正在尋找的東西。我沒有看到我可以使用觸發器而不是點擊。謝謝你和其他人的建議。 – KSPR

0

如果我明白你的問題,有一個HTML button點擊運行上面的代碼,你只需要簡單地從close選擇刪除a

$('.close').click(function() { 

然後你需要把兩個按鈕在你的HTML,與相關類作爲您的jQuery的定義:

<input type="button" class="close" value="Close" /> 
<input type="button" class="contact-click" value="Contact" /> 
0
<input type="Button" onClick="$('.contact-click').trigger('click');" value="Animate"/> 
    /* 
    Will call 
    $('.contact-click').click(function() { 
     $('#rollout').animate({ 
      height: "375", 
     }, 500); 
    }); 
    */ 
<input type="Button" onClick=" $('a.close').trigger('click');" value="Close"/> 

    /* 
    will call 
    $('a.close').click(function() { 
     $('#rollout').animate({ 
      height: "0", 
     }, 500); 
    }); 
    */