切换()上的jQuery text()更改?

我想创建一个脚本,根据其他元素可见性更改切换链接文本。

因此,虽然#form是可见的,但我希望#form-container文本为“Hide …”,虽然它是隐藏的,但我希望文本为“Show …”。

我试过这行 – 如果($(’#form’)。是(“:visible”)){另一种方式:if($(’#form’)。is(“:visible”)==“true “){ – 但它也不起作用。

怎么了? 每次切换另一个项目时如何更改文本?

$('.toggle').click( function() { $('#form').slideToggle(); if($('#form').is(":visible")){ $('#form-container a').text("Hide form container"); } else { $('#form-container a').text("Show form container"); } }); 

谢谢。

它在动画时始终可见 ,您可以检查.slideToggle()回调中的可见性,以便检查完成动画的时间,如下所示:

 $('.toggle').click(function() { $('#form').slideToggle(function() { $('#form-container a').text( $(this).is(':visible') ? "Hide form container" : "Show form container" ); }); }); 

您可以使用表单元素上的切换。

 $("#form").slideToggle( function () { //Hide }, function () { //Show } ); 

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