no message
This commit is contained in:
40
js/fontSize.js
Normal file
40
js/fontSize.js
Normal file
@@ -0,0 +1,40 @@
|
||||
(function (window, document) {
|
||||
var sizeUI = 750; // 定义设计图尺寸
|
||||
var remBase = 75; // 定义基准值
|
||||
var docEl = document.documentElement;
|
||||
var bodyEl = document.querySelector("body");
|
||||
|
||||
setRemUnit();
|
||||
|
||||
window.addEventListener("resize", setRemUnit);
|
||||
window.addEventListener("pageshow", function (e) {
|
||||
if (e.persisted) setRemUnit();
|
||||
});
|
||||
|
||||
function setRemUnit() {
|
||||
var docFontSize = (docEl.clientWidth / sizeUI) * remBase;
|
||||
console.log("bodyEl", bodyEl);
|
||||
docEl.style.fontSize = docFontSize + "px";
|
||||
bodyEl.style.fontSize = 16 / docFontSize + "rem";
|
||||
handleRemAdapt();
|
||||
}
|
||||
|
||||
function handleRemAdapt() {
|
||||
var currentFontSize = parseInt(docEl.style.fontSize);
|
||||
var temp = currentFontSize;
|
||||
for (var i = 0; i < 100; i++) {
|
||||
var realFontSize = parseInt(window.getComputedStyle(docEl).fontSize);
|
||||
var differ = realFontSize - currentFontSize;
|
||||
if (Math.abs(differ) >= 1) {
|
||||
if (differ > 0) {
|
||||
temp--;
|
||||
} else {
|
||||
temp++;
|
||||
}
|
||||
docEl.style.fontSize = temp + "px";
|
||||
} else {
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
})(window, document);
|
||||
Reference in New Issue
Block a user