2009-11-06 84 views
0

我正在使用模板,其中Java脚本文件已用于所有分辨率的修复分辨率。但我不知道JavaScript,如果我在tempalate进行任何更改,所以解决方案不起作用。网站分辨率修复Javascript中的所有分辨率

var ElementMaxHeight = function() { 
     this.initialize.apply(this, arguments); 
    } 

    ElementMaxHeight.prototype = { 
     initialize: function(className) { 
     this.elements = document.getElementsByClassName(className || 'maxheight');  
     this.textElement = document.createElement('span'); 
     this.textElement.appendChild(document.createTextNode('A')); 
     this.textElement.style.display = 'block'; 
     this.textElement.style.position = 'absolute'; 
     this.textElement.style.fontSize = '1em'; 
     this.textElement.style.top = '-1000px'; 
     this.textElement.style.left = '-1000px'; 
     document.body.appendChild(this.textElement); 
     this.textElementHeight = document.getDimensions(this.textElement).height; 
     var __object = this; 
     var __checkFontSize = this.checkFontSize; 
     this.checkFontSizeInterval = window.setInterval(function() {return __checkFontSize.apply(__object)}, 500); 

     this.expand(); 
    // Refresh elements height onResize event 
    var __expand = this.expand; 
    if (window.addEventListener) { 
     window.addEventListener('resize', function(event) {return __expand.apply(__object, [(event || window.event)])}, false); 
    } else if (window.attachEvent) { 
     window.attachEvent('onresize', function(event) {return __expand.apply(__object, [(event || window.event)])}); 
    } 
    }, 
     expand: function() { 
     this.reset(); 
     for (var i = 0; i < this.elements.length; i++) { 
      this.elements[i].style.height = document.getDimensions(this.elements[i].parentNode).height + 'px'; 
     } 
     }, 

     reset: function() { 
     for (var i = 0; i < this.elements.length; i++) {  
      this.elements[i].style.height = 'auto'; 
     } 
     }, 

     checkFontSize: function() { 
     var height = document.getDimensions(this.textElement).height; 
     if(this.textElementHeight != height) { 
     this.textElementHeight = height; 
     this.expand(); 
     } 
     } 
    } 


    if (!!document.evaluate) { 
     document._getElementsByXPath = function(expression, parentElement) { 
     var results = []; 
     var query = document.evaluate(expression, parentElement || document, 
      null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null); 
     for (var i = 0, length = query.snapshotLength; i < length; i++) 
      results.push(query.snapshotItem(i)); 
     return results; 
     } 
    } 

    document.getElementsByClassName = function(className, parentElement) { 
     if (!!document.evaluate) { 
     var q = ".//*[contains(concat(' ', @class, ' '), ' " + className + " ')]"; 
     return document._getElementsByXPath(q, parentElement); 
     } else { 
     var children = (parentElement || document.body).getElementsByTagName('*'); 
     var elements = [], child; 
     for (var i = 0, length = children.length; i < length; i++) { 
      child = children[i]; 
      if (child.className.length != 0 && 
       (child.className == className || 
       child.className.match(new RegExp("(^|\\s)" + className + "(\\s|$)")))) {  
      elements.push(child); 
      } 
     } 
     return elements; 
     } 
    } 

    document.getDimensions = function (element) { 
     var display = element.style.display; 
     if (display != 'none' && display != null) { // Safari bug 
     return {width: element.offsetWidth, height: element.offsetHeight}; 
     } 

     return {width: originalWidth, height: originalHeight}; 
     var jswidth = screen.width; 


    } 

这是模板使用的java脚本可以任何请帮助我如何修复屏幕分辨率。这个脚本如何工作?

回答

1
document.getDimensions = function (element) { 
     var display = element.style.display; 
     if (display != 'none' && display != null) { // Safari bug 
     return {width: element.offsetWidth, height: element.offsetHeight}; 
     } 

     return {width: originalWidth, height: originalHeight}; 
     var jswidth = screen.width; 


    } 

,如果你有什么要设置一个固定的宽度和高度只是改变返回值

来源:

return {width: element.offsetWidth, height: element.offsetHeight}; 

要:

return {width: 800, height: 600}; 

来源:

return {width: originalWidth, height: originalHeight}; 

要:

return {width: 800, height: 600}; 
0

您可以编写完整的行动,因为它应该为了改变自动解析写?

它是否适用于HTML & Flash?