FitText jquery プラグインを使用してテキストのサイズを変更しようとしています。問題は、ウィンドウのサイズ変更イベントの後にのみテキストが爆破されることです。
// Resizer() resizes items based on the object width divided by the compressor * 10
var resizer = function () {
$this.css('font-size', Math.max(Math.min($this.width() / (compressor*10), parseFloat(settings.maxFontSize)), parseFloat(settings.minFontSize)));
};
// Call once to set.
resizer();
スクリプトは、最初に少なくとも 1 回は "resizer" 関数を呼び出しているようです。ここで何か不足していますか?
これは私がスクリプトを使用している方法です:
<script src="/js/jquery.fittext.js"></script>
<script type="text/javascript">
$("h1").fitText(.6);
</script>
</body>
私はこのことにかなり慣れていないので、物事をまとめようとしているだけなので、どんな助けも大歓迎です。
編集
問題の説明をより具体的にする必要がありました。FlexSlider のキャプション ボックス内で FitText を利用しようとしています。以下の Ankit の例を動作させることができましたが、FlexSlider のキャプション テキストは正しくありませんでした。FitText が有効になるのに間に合うように、必要なスライダー要素が読み込まれていないと思います。私は次のひどいコードでこれを回避しました:
<script type="text/javascript">
$(document).ready(function() {
$('#spinner').hide();
setTimeout( function() { $("h1").fitText(.6); }, 200 );
setTimeout( function() { $("h1").fitText(.6); }, 300 );
setTimeout( function() { $("h1").fitText(.6); }, 500 );
setTimeout( function() { $("h1").fitText(.6); }, 700 );
setTimeout( function() { $("h1").fitText(.6); }, 1500 );
});
</script>
ハックのハックに違いないことはわかっていますが、テキストのサイズが必要に応じて変更されるようになりました。誰かがより良い方法を提案できれば、私はすべて耳にします。