maxheight.js

devlop78
Invité n'ayant pas de compte PHPfrance

28 sept. 2010, 01:05

Bonjour,

Quelqu'un sait-il à quoi sert ce maxheight.js ? Que fait-il, dans quelle situation ?

Je pose la question ici car google n'a pas l'air d'avoir la réponse ...

Merci d'avance,

Cordialement,

Mammouth du PHP | 661 Messages

28 sept. 2010, 09:07

Bin .... c'est à première vu un fichier, il doit être sensé être appelé par le navigateur afin de lui permettre d’interpréter ce qu'il contient ...
Maintenant, les fichiers, tu les appelles comme tu veux, et ce n'est pas leur nom qui va déterminer leur contenu ! même si généralement on les nomment en fonction de leur contenu afin de mieux se repérer dans une arborescence parfois désastreuses, je ne penses pas que quiconque s'avancent à te répondre avec pour seul élément cette faible information ;)

devlop78
Invité n'ayant pas de compte PHPfrance

28 sept. 2010, 18:33

Lol. Merci ...

Je comprends ta réponse, alors j'ajoute une précision : c'est un fichier qui à l'air de type HackIE, vous savez ... donc la question c'est : connaissez-vous son rôle à lui. Ce n'est pas un fichier arbitrairement appelé comme ça par moi ou par un pote ... donc ma question est aussi justifiée que s'il s'agissait d'un framework.

ViPHP
ViPHP | 3607 Messages

28 sept. 2010, 21:47

Et toujours pas de code pour que l'on puisse t'aider?

A mon avis, ce fichier js est censé émuler la propriété css max-height pour ie : http://ressources.mediabox.fr/documenta ... max-height

Mais je m'adonne à la divination là ;)

devlop78
Invité n'ayant pas de compte PHPfrance

28 sept. 2010, 23:44

Code : Tout sélectionner

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.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}; }

Bidzey
Invité n'ayant pas de compte PHPfrance

12 mai 2011, 00:33

exemple : maxheight.js prend la colonne de gauche et la rend la meme hauteur que la colonne droite