0

私はjQueryとJSに少し慣れていないので、モバイルサイトの画面幅に合わせてテキストサイズを調整できるようにしようとしています。

私は答えをウェブで検索し、この解決策を思いつきました

                (function($) {
                $.fn.textfill = function(maxFontSize) {
                    maxFontSize = parseInt(maxFontSize, 10);
                    return this.each(function(){
                        var ourText = $("span", this),
                            parent = ourText.parent(),
                            maxHeight = parent.height(),
                            maxWidth = parent.width(),
                            fontSize = parseInt(ourText.css("fontSize"), 10),
                            multiplier = maxWidth/ourText.width(),
                            newSize = (fontSize*(multiplier-0.1)),
                            textHeight = ourText.height();
                            if(newSize > 35){
                                ourText.css("fontSize",35);
                            }
                            else{
                                ourText.css(
                                    "fontSize", 
                                    (maxFontSize > 0 && newSize > maxFontSize) ? 
                                        maxFontSize : 
                                        newSize
                                );
                            }
                    });
                };
            })(jQuery);


            $(document).ready(function() {
                    $('.jtextfill').textfill({ maxFontPixels: 36 });
            });

しかし、それはページが最初にリロードされたときだけであり、Windowsのサイズ変更ではなかったので、すべてを関数に入力して追加しました

            $(document).ready(function () {
            resizeTextHeb();
            $(window).resize(function() {
                resizeTextHeb();
            });
        });

しかし、iPhone / iPad / Androidなどでは、画面が回転しても機能がリロードされません。画面の回転はウィンドウのサイズ変更として機能しませんか?それを機能させるために何ができますか?ありがとう。ありがとう

4

2 に答える 2

1

jsを使用せずに、そのためのメディアクエリを使用できます。

于 2012-08-22T14:43:21.880 に答える
0

あなたの関数名はメインの質問で「resizeTextHeb()」でした、関数名の問題はありますか?エラーレポートにはgooglechromejsコンソールを使用するか、FFブラウザのエラーコンソールを使用することをお勧めします。とにかく、それがuに警告を発する場合、主な問題はur関数にあり、方向付け方法ではありません。

于 2012-08-22T18:37:12.873 に答える