JQuery——我想单击一个单词来更改它,然后再次单击它来更改它

JQuery——我想单击一个单词来更改它,然后再次单击它来更改它,jquery,toggle,switch-statement,Jquery,Toggle,Switch Statement,我希望用户能够点击“你好!”把它改成“再见!”然后再次单击以将其更改回“Hello!”。我已经到了打招呼的地步了改为“再见!”,但我不知道如何使函数“重复” 我是这方面的新手,所以欢迎所有的帮助和建议 就我所知: HTML: 您也可以尝试以下方法: $("#greeting").click(function(){ if ($(this).text() == "Hello!") $(this).text("Goodbye!") else $(this).text("Hello!");

我希望用户能够点击“你好!”把它改成“再见!”然后再次单击以将其更改回“Hello!”。我已经到了打招呼的地步了改为“再见!”,但我不知道如何使函数“重复”

我是这方面的新手,所以欢迎所有的帮助和建议

就我所知:

HTML:


您也可以尝试以下方法:

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

下面是另一种使用
切换的方法:

HTML

<body>
    <p>Hello!</p>
    <p style="display: none">Goodbye!</p>
</body>
您可以在此处进行测试:


jQuery文档中有一个类似于此的切换示例:

您能解释一下这一行吗:$(this).text(函数(\ux,oldText)
text
方法回调函数接受两个参数,第一个是jQuery集合中当前元素的
index
,第二个是元素的当前
textContent
,从函数返回的任何内容都将是元素的新文本内容。很好,但是在索引处,您传递了_,这是什么意思?@DeadMan-在这种情况下,
索引
的值无关紧要,因此将其命名为
\uu
,以显示其不重要。我们在这里寻找正确的逻辑答案,而不是像您的答案那样的任何小技巧。询问者说他希望能够
单击“Hello!”,将其更改为“再见!”
,他说他是一个新手,所有的帮助/建议都是受欢迎的,所以即使这是一个“短技巧”,在jQuery中这也是一个有效的方法,他可以从中找到一些有用的东西。好的,如果你只是相信短技巧,那么我就通过向下投票收回。你必须编辑答案,这样我就可以收回向下投票,因为我的vo门是锁着的。
$("#greeting").click(function(){
     $(this).text(function(_, oldText) {
         return oldText === 'Goodbye!' ? 'Hello!' : 'Goodbye!';
     });
});
$("#greeting").click(function(){
if ($(this).text() == "Hello!")
   $(this).text("Goodbye!")
else
   $(this).text("Hello!");
});
<body>
    <p>Hello!</p>
    <p style="display: none">Goodbye!</p>
</body>
$(document).ready(function(){ 
    $("p").click(function () {
        $("p").toggle();
    });
});