1

Raphael テキスト要素で CSS 宣言を使用する必要がありましtext-overflow: ellipsis;たが、既存のクロスブラウザー ソリューションを見つけることができませんでした (おそらく私の検索スキルが失敗したのでしょうか?)。

fitTextそこで、自分のやりたいことを正確に実行する独自の Raphael プラグインを作成しました。テキストを特定の幅に合わせます。完璧ではありませんが、機能します。ここにフィドルgithub ページがあります。

今、私は考えています...

  1. 私の解決策はやり過ぎですか?言い換えれば、問題に取り組むためのより簡単な方法はありますか?
  2. プラグインの作業を続ける価値はありますか?
4

1 に答える 1

1

text-overflow: ellipsisはまだ広くサポートされておらず、非最新のブラウザには対応していないため、やり過ぎではありません。私はまさにこの問題に遭遇し、同様のアプローチでそれに取り組みました。

とにかく、ソースを見た後、いくつかの提案:

  • 大量の呼び出しをキャッシュすることでパフォーマンスを改善したい場合がありますgetBBox()
  • API 設計:この情報は要素自体から取得できるため、引数 ( text、 )を渡すことは冗長だと思います。API のエンドユーザーは、要素を呼び出すだけで、そのことを忘れwidthたいと思うでしょう。fillText()
于 2012-04-27T14:53:35.653 に答える