Ich habe ein div mit etwas Text darin, der anfänglich nicht umschließt und eine Ellipse zeigt, aber ich möchte dem Benutzer die Möglichkeit geben, auf eine Leseoption zu klicken und dann das div zu erweitern, um den gesamten Text anzuzeigen.Ist es möglich zu erkennen, ob Text länger als eine Zeile in meinem div ist?
Allerdings möchte ich in der Lage sein zu erkennen, ob der Text klein genug ist, um in das div zu passen, ohne es aus einer Zeile zu erweitern, und wenn ja, verstecken Sie die Show mehr Option.
Hier ist ein Link zu einem modifizierten JS Fiddle Ich habe Abarbeiten worden:
Und der Code von ihm:
HTML:
<div data-role="page" id="p1">
<div data-role="content">
<ul data-role="listview" data-inset="true">
<li data-role="list-divider">Item Title</li>
<li>
<div class="less">
Need to detect if this text is long enough to show the "Read More" if it is not don't
</div>
<div class="text-size">Read more...</div>
</li>
</ul>
CSS:
.less{
word-wrap: break-word;
white-space: nowrap;
text-overflow: ellipsis;
overflow: hidden;
}
.more{
white-space: normal;
}
.text-size{
display: block;
text-align: right;
padding-top: 10px;
color: blue !important;
cursor: pointer;
}
JS:
$(document).bind('pageshow', function() {
$(".text-size").click(function(){
$(".ui-li > div").toggleClass("less");
if($(".text-size").html() == "Read more...")
{
$(".text-size").html("Read less...");
}
else
{
$(".text-size").html("Read more...");
}
});
});
Ist es möglich, zu erkennen, ob der Text kurz genug ist, innerhalb des div zu passen und dann verstecken die weitere Option lesen?
FYI ab jQuery 1,7, die .auf() Methode ist die bevorzugte Methode für die zu einem Dokument, Event-Handler zu befestigen. – j08691
Diese Frage ist ein [** Duplikat **] (http://stackoverflow.com/questions/7738117/html-text-overflow-ellipsis-detection). – blex
Danke für das Zeigen von Blex Ich habe eine Suche vor dem Erstellen meiner Frage gemacht, aber diese eine verpasst. –