fontsize.js
上传用户:quxuerui
上传日期:2018-01-08
资源大小:41811k
文件大小:3k
源码类别:

网格计算

开发平台:

Java

  1. /*
  2. * Licensed to the Apache Software Foundation (ASF) under one or more
  3. * contributor license agreements.  See the NOTICE file distributed with
  4. * this work for additional information regarding copyright ownership.
  5. * The ASF licenses this file to You under the Apache License, Version 2.0
  6. * (the "License"); you may not use this file except in compliance with
  7. * the License.  You may obtain a copy of the License at
  8. *
  9. *     http://www.apache.org/licenses/LICENSE-2.0
  10. *
  11. * Unless required by applicable law or agreed to in writing, software
  12. * distributed under the License is distributed on an "AS IS" BASIS,
  13. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  14. * See the License for the specific language governing permissions and
  15. * limitations under the License.
  16. */
  17. function init() 
  18. { //embedded in the doc
  19.   //ndeSetTextSize();
  20. }
  21. function checkBrowser(){
  22.   if (!document.getElementsByTagName){
  23.     return true;
  24.   }
  25.   else{
  26.     return false;
  27.   }
  28. }
  29. function ndeSetTextSize(chgsize,rs) 
  30. {
  31.   var startSize;
  32.   var newSize;
  33.   if (!checkBrowser)
  34.   {
  35.     return;
  36.   }
  37.   startSize = parseInt(ndeGetDocTextSize());
  38.   if (!startSize)
  39.   {
  40.     startSize = 16;
  41.   }
  42.   switch (chgsize)
  43.   {
  44.   case 'incr':
  45.     newSize = startSize + 2;
  46.     break;
  47.   case 'decr':
  48.     newSize = startSize - 2;
  49.     break;
  50.   case 'reset':
  51.     if (rs) {newSize = rs;} else {newSize = 16;}
  52.     break;
  53.   default:
  54.     try{
  55.       newSize = parseInt(ndeReadCookie("nde-textsize"));
  56.     }
  57.     catch(e){
  58.       alert(e);
  59.     }
  60.     
  61.     if (!newSize || newSize == 'NaN')
  62.     {
  63.       newSize = startSize;
  64.     }
  65.     break;
  66.   }
  67.   if (newSize < 10) 
  68.   {
  69.     newSize = 10;
  70.   }
  71.   newSize += 'px';
  72.   document.getElementsByTagName('html')[0].style.fontSize = newSize;
  73.   document.getElementsByTagName('body')[0].style.fontSize = newSize;
  74.   ndeCreateCookie("nde-textsize", newSize, 365);
  75. }
  76. function ndeGetDocTextSize() 
  77. {
  78.   if (!checkBrowser)
  79.   {
  80.     return 0;
  81.   }
  82.   var size = 0;
  83.   var body = document.getElementsByTagName('body')[0];
  84.   if (body.style && body.style.fontSize)
  85.   {
  86.     size = body.style.fontSize;
  87.   }
  88.   else if (typeof(getComputedStyle) != 'undefined')
  89.   {
  90.     size = getComputedStyle(body,'').getPropertyValue('font-size');
  91.   }
  92.   else if (body.currentStyle)
  93.   {
  94.    size = body.currentStyle.fontSize;
  95.   }
  96.   //fix IE bug
  97.   if( isNaN(size)){
  98.     if(size.substring(size.length-1)=="%"){
  99.       return
  100.     }
  101.   }
  102.   return size;
  103. }
  104. function ndeCreateCookie(name,value,days) 
  105. {
  106.   var cookie = name + "=" + value + ";";
  107.   if (days) 
  108.   {
  109.     var date = new Date();
  110.     date.setTime(date.getTime()+(days*24*60*60*1000));
  111.     cookie += " expires=" + date.toGMTString() + ";";
  112.   }
  113.   cookie += " path=/";
  114.   document.cookie = cookie;
  115. }
  116. function ndeReadCookie(name) 
  117. {
  118.   var nameEQ = name + "=";
  119.   var ca = document.cookie.split(';');
  120.  
  121.   for(var i = 0; i < ca.length; i++) 
  122.   {
  123.     var c = ca[i];
  124.     while (c.charAt(0) == ' ') 
  125.     {
  126.       c = c.substring(1, c.length);
  127.     }
  128.     ctest = c.substring(0,name.length);
  129.  
  130.     if(ctest == name){
  131.       return c.substring(nameEQ.length,c.length);
  132.     }
  133.   }
  134.   return null;
  135. }