scale_750.js 1.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. (function(doc, win) {
  2. var docEl = doc.documentElement,
  3. isIOS = navigator.userAgent.match(/iphone|ipod|ipad|android/gi),
  4. dpr = isIOS ? Math.min(win.devicePixelRatio, 3) : 1,
  5. resizeEvt = 'orientationchange' in window ? 'orientationchange' : 'resize';
  6. /*docEl.dataset.dpr = dpr;
  7. var meta = doc.getElementsByTagName('meta'),
  8. head = doc.getElementsByTagName('head')[0];
  9. *判断是否有vierport;
  10. *如果有则删除
  11. function removeViewport(){
  12. for(var i = 0; i < meta.length; i++){
  13. if(meta[i].getAttribute('name') === 'viewport' ){
  14. head.removeChild(meta[i]);
  15. }
  16. }
  17. };
  18. removeViewport();
  19. //创建节点
  20. function createViewport(){
  21. metaEl = doc.createElement('meta');
  22. metaEl.setAttribute('name', 'viewport');
  23. metaEl.setAttribute('content', 'initial-scale=' + 1/dpr + ', maximum-scale=' + 1/dpr + ', minimum-scale=' + 1/dpr + ', user-scalable=no');
  24. head.insertBefore(metaEl,head.children[0]);
  25. };
  26. createViewport();
  27. */
  28. var recalc = function() {
  29. var width = docEl.clientWidth;
  30. if (width / dpr > 750) {
  31. width = 750 * dpr;
  32. }
  33. docEl.style.fontSize = 50 * (width / 750) + 'px';
  34. };
  35. recalc();
  36. if (!doc.addEventListener) return;
  37. win.addEventListener(resizeEvt, recalc, false);
  38. })(document, window);