Jquery如何在另一个div上切换文本更改

时间:2011-05-24 15:49:37

标签: jquery

点击手风琴的底部链接时,我会更改顶部链接上的文字。

目前,只有点击顶部链接时,顶部链接上的文字才会更改。

下面的

是我的jquery

$(document).ready(function () {
    // choose text for the show/hide link - can contain HTML (e.g. an image)
    var showText = 'Hide Information';
    var hideText = 'Show Information';

    // initialise the visibility check
    var is_visible = false;

    // append show/hide links to the element directly preceding the element with a class of "toggle"
    $('.collapseLink').append('<span class="dottedBot">' + showText + '</span>');

    // hide all of the elements with a class of 'toggle'
    $('.revealBoxContents').show();

    // capture clicks on the toggle links
    $('a.collapseLink').click(function () {
        // switch visibility
        is_visible = !is_visible;

        // change the link depending on whether the element is shown or hidden
        $(this).html((!is_visible) ? showText : hideText);

        // toggle the display - uncomment the next line for a basic "accordion" style
        //$('.toggle').hide();$('a.toggleLink').html(showText);
        $(this).parent().next('.revealBoxContents').slideToggle('slow');

        // return false so any link destination is not followed
        return false;
    });

    // toggle the bottom link
    $('.collapseLink').click(function () {
        $(this).parents('.revealBoxContents').stop(true, true).slideToggle('slow');
    });
});

这是网址

http://satbulsara.com/NSJ-local/eqs1.htm

很想知道如何做到这一点。

谢谢,

周六

2 个答案:

答案 0 :(得分:1)

只需在点击处理程序中选择所有“兄弟”a.collapseLink元素:

$(this).parents('div.revealBoxContents').find('a.collapseLink')

此处this是已点击的链接。现在,您可以将所有链接作为一个组(而不是一次只有一个)执行任何操作。

编辑:更多详情

因此,首先,您需要将is_visible变量更改为仅应用于当前链接,现在一个框会影响其他链接。所以你需要:

var is_visible = $(this).parents('div.revealBoxContents').is(':visible');

而不是:

$(this).html((!is_visible) ? showText : hideText);

你会写:

$(this).parents('div.revealBoxContents').find('a.collapseLink').html((!is_visible) ? showText : hideText);

答案 1 :(得分:0)

我需要在页面中看到标记,以便为您提供手持操作。基础是:

  1. 设置一个能够改变这种变化的功能 - 看起来你已经掌握了基础知识
  2. 从您需要设置更改的项目中调用此功能
  3. 找到必须更改的元素(ID最简单)
  4. 更改文本的实际行看起来像这样:

     $("#idForItemToChange").html("You sunk my battleship!");
    

    基本JavaScript:从控件触发的函数,找到要更改的项,更改文本。