目の前に、8行のテキストのみを表示する関数を作成したいというユニークな状況があります。ウェブサイトはレスポンシブです。これが私が試したことです:
var fontSize = $target.css("font-size").match(/\d/g).join(""),
lineWidth = $target.width(),
totalLetters = $target.text().length,
lettersPerLine = (totalLetters * fontSize) / lineWidth,
numOfLines = Math.round(totalLetters/lettersPerLine);
問題:
- 私が使用しているフォントはモノスペースではありません。つまり、すべての文字が同じ幅であるとは限りません。
- WordsPerLine をパラメーターとして関数に渡したくありません。これを計算させたいのです。
- ブラウザがテキストを新しい行に折り返すために何をしているのかわかりません/わかりません。たとえば、
<p>
幅が 600px の場合、900 語が 1 行に収まらないことは明らかです.ブラウザはテキストを新しい行に折り返すでしょう..しかし、これを達成するためにブラウザは何をしますか?改行文字を挿入しますか?\n
? - 上記のコードは私には機能しません。理由がわかりません...手がかりがあれば(賢い人は私が間違っていることを間違いなく知っていると確信しています)、光を当ててください。すべての提案に深く感謝いたします。