JQuery - 我想单击一个单词来更改它,然后再次单击它以将其更改回来

时间:2013-03-16 06:51:56

标签: jquery toggle switch-statement

我希望用户能够点击“你好!”让它变成'再见'!然后再次单击它将其更改回“Hello!”。我做到了'你好'!改为'再见!',但我不知道如何使这个功能'重复'。

我是一个极端的新手,所以欢迎所有的帮助和建议!

据我所知:

HTML:

<body>
   <p id = "greeting">Hello!</p>
</body>

JQuery的:

$(function(){
    $("#greeting").click(function(){
        $(this).text('Goodbye!').toggle(hide);
    });
});

3 个答案:

答案 0 :(得分:10)

$("#greeting").click(function(){
     $(this).text(function(_, oldText) {
         return oldText === 'Goodbye!' ? 'Hello!' : 'Goodbye!';
     });
});

http://jsfiddle.net/DPeWk/

答案 1 :(得分:1)

以下是使用toggle执行此操作的另一种方法:

HTML

<body>
    <p>Hello!</p>
    <p style="display: none">Goodbye!</p>
</body>

jQuery

$(document).ready(function(){ 
    $("p").click(function () {
        $("p").toggle();
    });
});

您可以在此处进行测试:http://jsfiddle.net/zcQkD/2/

在用于切换的jQuery文档中有一个与此类似的示例:http://api.jquery.com/toggle/

答案 2 :(得分:0)

你也可以试试这个:

$("#greeting").click(function(){
if ($(this).text() == "Hello!")
   $(this).text("Goodbye!")
else
   $(this).text("Hello!");
});