在jQuery中切换文本?

在jQuery中切换文本?,jquery,text,toggle,Jquery,Text,Toggle,我试着在你点击它的时候改变它的文本。但不是切换,而是看不见,不起作用 代码如下: $('a#button').click(function(e) { e.preventDefault(); findListingBoxList.slideToggle('200'); $(this).toggle(function() { $(this).html('Hide All'); }, function() { $(this).html(

我试着在你点击它的时候改变它的文本。但不是切换,而是看不见,不起作用

代码如下:

$('a#button').click(function(e) {
    e.preventDefault();
    findListingBoxList.slideToggle('200');

    $(this).toggle(function() {
        $(this).html('Hide All');
    }, function() {
        $(this).html('Show All');
    });
});
HTML:

<a id="button" href="#"></a>
<div id="ListingBox">

        <ul id="furniture">
            <li>Beds</li>
            <li>Chairs</li>
            <li>Tables</li>
            <li>Desks</li>
            <li>Shelves</li>
            <li>Cabinet</li>
            <li>Miscellaneous</li>
        </ul>

        <ul id="games">
            <li>PC</li>
            <li>Mac</li>
            <li>XBOX 360</li>
            <li>Playstation 3</li>
            <li>Nintendo Wii</li>
            <li>PS Vita</li>
            <li>Playstation 2</li>
            <li>Playstation</li>
            <li>Super Nintendo</li>
            <li>Nintendo DS</li>
            <li>Miscellaneous</li>
        </ul>
</div>

  • 椅子
  • 桌子
  • 办公桌
  • 架子
  • 内阁
  • 个人电脑
  • 苹果
  • XBOX 360
  • 游戏机3
  • 任天堂Wii
  • 私人简历
  • 游戏站2
  • 游戏机
  • 超级任天堂
  • 任天堂DS
我已经用
.html
.text

.toggle()事件从1.8开始尝试过了

HTML:

<a href="#" id="button" class="hide_all">Hide ALL</a>

<div id="find">
  <p>Here is some content</p>
  <p>Here is some content</p>
</div>
使用slideDown/slideUp允许链接工作,而不管其启动状态如何(您可以使用Show ALL或Hide ALL状态加载页面)

查看此演示:

.toggle()事件从1.8开始

HTML:

<a href="#" id="button" class="hide_all">Hide ALL</a>

<div id="find">
  <p>Here is some content</p>
  <p>Here is some content</p>
</div>
使用slideDown/slideUp允许链接工作,而不管其启动状态如何(您可以使用Show ALL或Hide ALL状态加载页面)

请看下面的演示:

您必须给出一个整数参数而不是字符串,即
'200'


您必须给出一个整数参数而不是字符串,即
'200'
切换
事件方法已被弃用,您可以使用
文本
方法回调函数,请注意,到200ms时
滑动切换
执行得太快

$('#button').click(function(e) {
    e.preventDefault();
    findListingBoxList.slideToggle(600);   
    $(this).text(function(i, currentText){
       return currentText === 'Show All' ? 'Hide All' : 'Show All';
    })
});

toggle
事件方法不推荐使用,您可以使用
text
方法回调函数,请注意,到200ms时
slideToggle
执行得太快

$('#button').click(function(e) {
    e.preventDefault();
    findListingBoxList.slideToggle(600);   
    $(this).text(function(i, currentText){
       return currentText === 'Show All' ? 'Hide All' : 'Show All';
    })
});

首先,请记住,切换事件在最新的jquery中被删除,并且在v1.8中被弃用

此外,在代码中,只有在第一次单击按钮后,才能将切换事件绑定到按钮。相反,你应该这样做:

$('a#button').click(function(e) {
    e.preventDefault();
    findListingBoxList.slideToggle('200');

}).toggle(function() {
        $(this).html('Hide All');
    }, function() {
        $(this).html('Show All');
    });

最后一件事,它应该在
findListingBoxList

之外。首先,请记住,您的切换事件在最新的jquery中被删除,并且在v1.8中被弃用

此外,在代码中,只有在第一次单击按钮后,才能将切换事件绑定到按钮。相反,你应该这样做:

$('a#button').click(function(e) {
    e.preventDefault();
    findListingBoxList.slideToggle('200');

}).toggle(function() {
        $(this).html('Hide All');
    }, function() {
        $(this).html('Show All');
    });


最后一件事,它应该在
findListingBoxList

之外,也可以共享您的HTML代码。在哪里定义了
findListingBoxList
?此版本的切换已弃用,并在1.9中删除!什么版本的jQuery,你有吗?罢工,表示不喜欢,但似乎不被删除,仍然应该考虑这样做另一种方式。我使用最新版本的jQuery从谷歌API。分享你的HTML代码也。哪里是代码> FordListBoxListBux//Cube定义?此版本的切换已弃用,并在1.9中删除!你有什么版本的jQuery?点击它,但不看起来像是被删除了,应该考虑另一种方式。我使用谷歌Apple的最新版本。code>toggle()
分别在
mouseenter
mouseout
上运行函数。我的坏消息。这不是我第一次被jQuery文档检查过,对两种完全不同的行为使用相同的方法对我来说是一种误解。。。然而,拟议的解决办法正在发挥作用。(就像@undefined所说的那样,这个方法已经被弃用了,“-1”是不公平的^^^)提供的链接不起作用(可能是代码笔问题);也就是说,你应该在答案中写下工作的要点。现在代码笔正在工作。我更新了它,使用slideDown/slideUp代替了切换。因此,无论启动状态如何,它都能正常工作。编辑:我将源代码直接放在答案中。否
toggle()
分别在
mouseenter
mouseout
上运行函数。我的坏消息。这不是我第一次被jQuery文档检查过,对两种完全不同的行为使用相同的方法对我来说是一种误解。。。然而,拟议的解决办法正在发挥作用。(就像@undefined所说的那样,这个方法已经被弃用了,“-1”是不公平的^^^)提供的链接不起作用(可能是代码笔问题);也就是说,你应该在答案中写下工作的要点。现在代码笔正在工作。我更新了它,使用slideDown/slideUp代替了切换。因此,无论启动状态如何,它都能正常工作。编辑:我将源代码直接放在答案中。我尝试将其复制粘贴到那里并进行处理,但没有成功。@user2021893如果我使用:
$('#ListingBox ul')。slideToggle(600)
所以这一定是你对findListingBoxList的定义——不管它在哪里都是错误的。我试图复制粘贴到那里并解决它,但它不起作用。@user2021893如果我使用:
$(“#ListingBox ul”)。slideToggle(600)
所以这一定是您对findListingBoxList的定义——不管这是哪里的错误。