2013-02-09 58 views
-2

我對Jquery和Javascript一般都很陌生,我想知道如何在隱藏某些東西后在按鈕上更改文本。隱藏然後通過jquery顯示的東西

據我所知,您隱藏通過這個代碼的東西:

$("element").click(function() { 
    $("element2").hide("slow"); 
}); 

,並展示一些東西:

$("element").click(function() { 
    $("element2").fadeIn("slow"); 
}); 

,所以我想要做的是有一篇文章類型的事情,當按下「隱藏」按鈕時,它隱藏所有段落文本,但留下另一個按鈕說「顯示」

我該如何實現?

+0

有隱藏功能也顯示按鈕? – David 2013-02-09 12:37:21

+0

是的,但就像我說的,我是JavaScript新手。那我該如何做到這一點? – ReallyGoodPie 2013-02-09 12:38:37

+0

給我們一些HTML工作... – 2013-02-09 12:39:31

回答

1

要隱藏:

$("element").click(function() { 
    $("element2").hide("slow"); 
    $("element").text('Show'); 
}); 

所示:

$("element").click(function() { 
     $("element2").fadeIn("slow"); 
     $("element").text('Hide'); 
    }); 
+0

當'$('#element2')'被隱藏時,OP想留下一個按鈕,但是將文本改爲Show' – Raptor 2013-02-09 12:42:38

+0

這是一個不完整的例子......都是綁定到相同元素的事件處理程序嗎?如果是的話,兩者將同時執行並且不會產生期望的結果。 – 2013-02-09 12:44:56

+0

我假設'元素'是按鈕操作單擊從發佈的代碼隱藏'element2'。如果是這樣的話,那麼我們只需要改變'element'文本就可以像我所做的那樣賦予顯示/隱藏功能。如果情況不同,我會要求op澄清更多或張貼小提琴 – codetantra 2013-02-09 12:47:43

1

更改按鈕值一樣

$("element").click(function() { 
    $("element2").hide("slow"); 
    $("#btnID").prop('value', 'Show'); 
    }); 

    $("element").click(function() { 
     $("element2").fadeIn("slow"); 
    $("#btnID").prop('value', 'Hide'); 
    }); 
2

你只需要一個按鈕,改變其文本。讓我們假設從一開始就可以看到所有的內容。將按鈕添加到您的HTML,並給它一個ID,所以你可以很容易地識別它:

<button id="toggleButton" type="button">Hide</button> 

然後綁定的事件處理程序,其

  • 切換要顯示的元素的可見性按鈕/隱藏和
  • 改變按鈕

的文本內容,就是這樣:

$('#toggleButton').click(function() { 
    // toggle visibility if all p elements 
    $('p').toggle(); 

    // Change text based on current text 
    // If the current text is 'Hide' then we just hid the elements and 
    // we have to change the text to 'Show' (and vice versa). 
    $(this).text(function(i, current_text) { 
     return current_text === 'Hide' ? 'Show' : 'Hide'; 
    }); 
}); 

DEMO

參考:.click.toggle.textconditional operator


你必須調整選擇器只匹配你真的想隱藏的元素,但jQuery有great documentation about all possible selectors

jQuery的文檔相當廣泛,花一些時間閱讀是值得的。

由於您剛剛開始,我建議您閱讀http://eloquentjavascript.net/和/或MDN JavaScript GuidejQuery tutorial(按此順序)。

0

我通常有兩個按鈕,一個用文本顯示,另一個用隱藏文本,然後當你點擊其中一個顯示一個,並使所有必要的東西,並隱藏它的架子。

HTML:

<a href="#" id="bshow" style="display:block"> Show </a> 
<a href="#" id="bhide" style="display:none"> Hide </a> 
<p id="textshow" style="display:none"> lorem ipsum</p> 

的Javascript:

$('#bshow').click(function() { 
    $('#bhide').fadeIn(); 
    $('#textshow').fadeIn(); 
    $(this).hide(); 
}); 

我認爲這jsFiddle可以幫助你:

相關問題