我对 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 });
});
但是只有当页面第一次重新加载而不是在窗口调整大小时,所以我将它全部输入到一个函数中并添加
$(document).ready(function () {
resizeTextHeb();
$(window).resize(function() {
resizeTextHeb();
});
});
但现在在 iPhone/iPad/Android 等设备上,它不会在屏幕旋转时重新加载该功能。屏幕旋转不作为窗口调整大小吗?我该怎么做才能让它发挥作用?谢谢。谢谢