xinjiang/SGGL/FineUIPro.Web/res/lib/flexlib.js

122 lines
4.2 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

let basePx = document.body.clientWidth / 100
window.document.documentElement.style.fontSize = basePx+'px';
// //px 除以100 并px改rem
// ; (function (win, lib) {
// var doc = win.document;
// var docEl = doc.documentElement;
// var metaEl = doc.querySelector('meta[name="viewport"]');
// var flexibleEl = doc.querySelector('meta[name="flexible"]');
// var dpr = 0;
// var scale = 0;
// var tid;
// var flexible = lib.flexible || (lib.flexible = {});
// if (metaEl) {
// // console.warn('将根据已有的meta标签来设置缩放比例');
// var match = metaEl.getAttribute('content').match(/initial\-scale=([\d\.]+)/);
// if (match) {
// scale = parseFloat(match[1]);
// dpr = parseInt(1 / scale);
// }
// } else if (flexibleEl) {
// var content = flexibleEl.getAttribute('content');
// if (content) {
// var initialDpr = content.match(/initial\-dpr=([\d\.]+)/);
// var maximumDpr = content.match(/maximum\-dpr=([\d\.]+)/);
// if (initialDpr) {
// dpr = parseFloat(initialDpr[1]);
// scale = parseFloat((1 / dpr).toFixed(2));
// }
// if (maximumDpr) {
// dpr = parseFloat(maximumDpr[1]);
// scale = parseFloat((1 / dpr).toFixed(2));
// }
// }
// }
// if (!dpr && !scale) {
// var isAndroid = win.navigator.appVersion.match(/android/gi);
// var isIPhone = win.navigator.appVersion.match(/iphone/gi);
// var devicePixelRatio = win.devicePixelRatio;
// if (isIPhone) {
// // iOS下对于2和3的屏用2倍的方案其余的用1倍方案
// if (devicePixelRatio >= 3 && (!dpr || dpr >= 3)) {
// dpr = 3;
// } else if (devicePixelRatio >= 2 && (!dpr || dpr >= 2)) {
// dpr = 2;
// } else {
// dpr = 1;
// }
// } else {
// // 其他设备下仍旧使用1倍的方案
// dpr = 1;
// }
// scale = 1 / dpr;
// }
// docEl.setAttribute('data-dpr', dpr);
// if (!metaEl) {
// metaEl = doc.createElement('meta');
// metaEl.setAttribute('name', 'viewport');
// metaEl.setAttribute('content', 'initial-scale=' + scale + ', maximum-scale=' + scale + ', minimum-scale=' + scale + ', user-scalable=no');
// if (docEl.firstElementChild) {
// docEl.firstElementChild.appendChild(metaEl);
// } else {
// var wrap = doc.createElement('div');
// wrap.appendChild(metaEl);
// doc.write(wrap.innerHTML);
// }
// }
// function refreshRem() {
// var width = docEl.getBoundingClientRect().width;
// if (width / dpr > 768) {
// width = 768 * dpr;
// }
// var rem = width / 7.5;
// docEl.style.fontSize = rem + 'px';
// flexible.rem = win.rem = rem;
// }
// win.addEventListener('resize', function () {
// clearTimeout(tid);
// tid = setTimeout(refreshRem, 300);
// }, false);
// win.addEventListener('pageshow', function (e) {
// if (e.persisted) {
// clearTimeout(tid);
// tid = setTimeout(refreshRem, 300);
// }
// }, false);
// if (doc.readyState === 'complete') {
// doc.body.style.fontSize = 12 * dpr + 'px';
// } else {
// doc.addEventListener('DOMContentLoaded', function (e) {
// doc.body.style.fontSize = 12 * dpr + 'px';
// }, false);
// }
// refreshRem();
// flexible.dpr = win.dpr = dpr;
// flexible.refreshRem = refreshRem;
// flexible.rem2px = function (d) {
// var val = parseFloat(d) * this.rem;
// if (typeof d === 'string' && d.match(/rem$/)) {
// val += 'px';
// }
// return val;
// }
// flexible.px2rem = function (d) {
// var val = parseFloat(d) / this.rem;
// if (typeof d === 'string' && d.match(/px$/)) {
// val += 'rem';
// }
// return val;
// }
// })(window, window['lib'] || (window['lib'] = {}));