1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72
|
<script type="text/javascript">
<!--/*--><![CDATA[//><!--
var cssName = "css/common.css";
var myCSS;
function init() {
myCSS = fctCssExist();
fctWidth('div1');
}
/*vient seulement vérifier si la variable a été déclarée ou si le fichier se
retrouve bien dans les feuilles déclarées en début de page*/
function fctCssExist() {
var mySheet;
try {
/* si la variable est déclarée */
if (cssName != null) {
/*boucle dans toutes les feuilles qui sont déclarée en haut de page*/
for (i=0; i<document.styleSheets.length; i++) {
/* si on trouve un href = à la variable globale on vient affecter
mySheet en lui assignant le contenu de la CSS et on met une
variable a tru sinon on la met a false*/
if(document.styleSheets[i].href == cssName) {
mySheet = document.styleSheets[i];
sheetFind = true;
break;
} else {
sheetFind = false;
}
}
if (sheetFind == true) {
return mySheet;
} else {
/* message d'erreur si il ne retrouve pas la CSS dans la page*/
alert("The cssName variable is wrong.");
return false;
}
}
} catch (e){
/*message si la variable n'est pas trouvée*/
alert("You completely forgot to declare the cssName variable.");
return false;
}
}
function fctWidth(divID) {
if (myCSS != false) {
/* on boucle dans la CSS parmi toutes les ligne de la CSS*/
for (i=0; i<myCSS.rules.length; i++){
/* si l'identifiant est égale au paramêtre passé à la fonction on
vient prendre le width et on le change selon si on est en overflow
ou pas*/
if (myCSS.rules[i].selectorText=="#"+divID){
var CSSrules = myCSS.rules[i];
var widthVal = CSSrules.style.width;
var numVal = widthVal.substring(0, widthVal.indexOf("px"));
var boxHeight =document.getElementById(divID).clientHeight;
var boxOverflow = document.getElementById(ulID).scrollHeight;
if (boxOverflow > boxHeight) {
CSSrules.style.width = (numVal-32)+"px";
}
break;
}
}
}
}
//--><!]]>
</script> |
Partager