Forum de discussion
Forum « Programmation Javascript » (archives)
Re: Maniement (ou redimensionnement ) de calque
Envoyé: 8 juillet 2004, 18h27 par ross
Le premier c'est qu'il ne fonctionne que sur IE6 et j'aimerais qu'il fonctionne sur Netscape et Mozilla (Firefox).
Et le deuxième c'est qu'il se redimensionne que en carré...testez le vous comprendrez! Alors que j'aimerais pouvoir lui donner une forme rectangulaire.
Code:
<html>
<head>
<title>The Dynamic Duo - Clipping Demo 3</title>
<script language="JavaScript">
<!--
ns4 = (document.layers)? true:false
ie4 = (document.all)? true:false
function init() {
if (ns4) block = document.blockDiv
if (ie4) block = blockDiv.style
}
function clipValues(obj,which) {
if (ns4) {
if (which=="t") return obj.clip.top
if (which=="r") return obj.clip.right
if (which=="b") return obj.clip.bottom
if (which=="l") return obj.clip.left
}
else if (ie4) {
var clipv = obj.clip.split("rect(")[1].split(")")[0].split("px")
if (which=="t") return Number(clipv[0])
if (which=="r") return Number(clipv[1])
if (which=="b") return Number(clipv[2])
if (which=="l") return Number(clipv[3])
}
}
function clipTo(obj,t,r,b,l) {
if (ns4) {
obj.clip.top = t
obj.clip.right = r
obj.clip.bottom = b
obj.clip.left = l
}
else if (ie4) obj.clip = "rect("+t+"px "+r+"px "+b+"px "+l+"px)"
}
function clipBy(obj,t,r,b,l) {
if (ns4) {
obj.clip.top = clipValues(obj,'t') + t
obj.clip.right = clipValues(obj,'r') + r
obj.clip.bottom = clipValues(obj,'b') + b
obj.clip.left = clipValues(obj,'l') + l
}
else if (ie4) obj.clip = "rect("+(this.clipValues(obj,'t')+t)+"px "+(this.clipValues(obj,'r')+r)+"px "+Number(this.clipValues(obj,'b')+b)+"px "+Number(this.clipValues(obj,'l')+l)+"px)"
}
function wipe1() {
if ((clipValues(block,'r')<700)&&(clipValues(block,'b')<400)) {
clipBy(block,0,10,10,0)
setTimeout("wipe1()",30)
}
}
function wipe2() {
if ((clipValues(block,'r')>1)&&(clipValues(block,'b')>1)) {
clipBy(block,0,-10,-10,0)
setTimeout("wipe2()",30)
}
}
//-->
</SCRIPT>
</HEAD>
<BODY BGCOLOR="#FFFFFF" onLoad="init()">
<DIV ID="blockDiv" STYLE="position:absolute; left:150; top:80; width:700; height:400; clip:rect(0,0,0,0); background-color:#FF0000; layer-background-color:#FF0000;">
</DIV>
Check Clip Values:
<A HREF="javascript:alert(clipValues(block,'t'))">top</A>,
<A HREF="javascript:alert(clipValues(block,'r'))">right</A>,
<A HREF="javascript:alert(clipValues(block,'b'))">bottom</A>,
<A HREF="javascript:alert(clipValues(block,'l'))">left</A>
<P><A HREF="javascript:wipe1()">Ouvrir la fenêtre</A>
<BR><A HREF="javascript:wipe2()">Fermer la fenêtre</A>
</BODY>
</HTML>
Source : [url]http://www.dansteinman.com/dynduo/[/url]
Voilà, si vous pouviez regarder au code et m'aider à obtenir l'effet que je désire...
Merci
Ross
Réponses
|