我有一個名爲「projects」,div id =「main」>的按鈕和一個標籤在裏面。該頁面的正文寫在標籤上。當我按下按鈕時,文本將改變,使用label.text = ..在C#中的button_Click事件中。這是按鈕:asp.net&jquery淡入淡出效果
<asp:Button ID="projects" runat="server" OnClick="projects_Click"/>
我想要做的是在更改文本時添加淡入淡出效果。我看到最簡單的方法是使用jQuery。我加了這一點:
<head>
<script type='text/javascript'>
$(function() {
$("#projects").click(function (e) {
e.preventDefault();
$('#main').fadeOut(1000);
$("#main").fadeIn(1000);
});
});
</script>
</head>
現在發生的是,如果我按下按鈕的項目,文本只淡出,然後消失在,但它沒有改變,不執行projects_Click。如果我刪除e.preventDefault(); ,文字改變但沒有消退效果。我怎樣才能讓他們一起工作?舊文本淡出,projects_Click被執行並且fadeIn開始生效。
您需要了解服務端功能與客戶端功能的區別。 Javasctipt/jQuery在服務器上的瀏覽器asp.net上執行。 Ajax經常被用來彌補這個差距。在代碼中有'preventDefault();'是停止執行服務器端代碼,因爲這是按鈕的默認操作。 – 2014-10-19 11:48:54
您是否嘗試過我的解決方案(第2部分)? – 2014-10-19 12:16:49
我告訴你用戶'animate()' - 自定義JS函數,並從按鈕單擊調用它,但是你完全不正確的方式。 – 2014-10-19 14:13:15