单击字符串后如何调整其长度 而不会使整个代码复杂化。

像在strlen这样的东西将是解决方案。

请参阅://此

var toggleState = true;
$(document).ready(function() {
    $('.more').on("click", function() {
        if(toggleState) {
            $(this).length(unlimited characters); // This
        } else {
            $(this).length(100 characters); // This
        }
        toggleState = !toggleState;
    });
});

.length(不限字符数)只是为了让您了解我的意思/我想做什么。 我需要一个解决方案,不必是length();

===============>>#1 票数:3 已采纳

为什么不尝试这样的事情,而不是依靠任意数量的字符呢?

<div class="expandable">Blah blah blah blah... Lots of text here</div>
<a href="javascript:void(null);" class="expandlink">More...</a>

然后使用以下CSS:

.expandable {
    display: inline-block;
    width:90%;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}
.expandable.expanded {
    width:auto;
    display:block;
    white-space:normal;
}

而这个jQuery:

$(function() {
    $(".expandlink").click(function() {
        $(this.previousSibling.previousSibling).toggleClass("expanded");
        var t = $(this);
        t.text(t.text() == "More..." ? "Less..." : "More...");
    });
});

是JSFiddle演示的。

===============>>#2 票数:1

您可以轻松地用CSS实现这一目标。 text-overflow:省略号,然后单击。

http://jsfiddle.net/nhzDR/

的HTML

<span class="clsshort">This is a very long text used to check how is everythign happening.This is a very long text used to check how is everythign happening.This is a very long text used to check how is everythign happening</span>

JS

$(document).ready(function() {
    $('.clsshort').on("click", function() {
       $(this).toggleClass("clsshort");
    });
});

的CSS

span.clsshort
{
    width:200px;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space: nowrap;
    display:inline-block;
}

  ask by Nabil Ghulam translate from so

未解决问题?本站智能推荐: