【问题标题】:jQuery change original-title text on click?jQuery单击时更改原始标题文本?
【发布时间】:2023-03-21 08:57:01
【问题描述】:

我有这个 html 行:

<div class="hide-btn top tip-s" original-title="Close sidebar"></div>

当用户点击它时,我希望文本更改为“打开侧边栏”,我该怎么做?

这是我的 JS:

$(".hide-btn").click(function(){
    if($("#left").css("width") == "0px"){
        $("#left").animate({width:"230px"}, 500);
        $("#right").animate({marginLeft:"250px"}, 500);
        $("#wrapper, #container").animate({backgroundPosition:"0 0"}, 500);
        $(".hide-btn.top, .hide-btn.center, .hide-btn.bottom").animate({left: "223px"}, 500, function() { $(window).trigger("resize");});
    }
    else{
        $("#left").animate({width:"0px"}, 500);
        $("#right").animate({marginLeft:"20px"}, 500);
        $("#wrapper, #container").animate({backgroundPosition:"-230px 0px"}, 500);
        $(".hide-btn.top, .hide-btn.center, .hide-btn.bottom").animate({left: "-7px"}, 500, function() { $(window).trigger("resize");});
    }
});

感谢您的宝贵时间!

【问题讨论】:

标签: jquery text click


【解决方案1】:

要使用 jQuery 更改元素的属性,请使用 attr。在与 jQuery 挂钩的事件处理程序中,原始 DOM 元素可用作 this。要获得一个 jQuery 包装器,请使用$(this)。例如:

$(this).attr("original-title", "new text");

附注:original-title 属性对 div 元素无效。考虑改用data-* attributes

【讨论】:

    【解决方案2】:

    我喜欢为那种事情做这个:-)

    var a = $(".hide-btn.top");
    a.attr('original-title', a.attr('original-title').replace(/Close/, 'Open') );
    

    可能看起来过于复杂,但之后我经常会改变对确切标签的看法,这样我就不必返回并调整所有内容。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-29
      • 2019-03-07
      • 1970-01-01
      • 2018-10-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多