Page 1 sur 1
maxheight.js
Posté : 28 sept. 2010, 01:05
par devlop78
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,
Re: maxheight.js
Posté : 28 sept. 2010, 09:07
par Nours312
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

Re: maxheight.js
Posté : 28 sept. 2010, 18:33
par devlop78
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.
Re: maxheight.js
Posté : 28 sept. 2010, 21:47
par jojolapine
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à

Re: maxheight.js
Posté : 28 sept. 2010, 23:44
par devlop78
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};
}
Re: maxheight.js
Posté : 12 mai 2011, 00:33
par Bidzey
exemple : maxheight.js prend la colonne de gauche et la rend la meme hauteur que la colonne droite