cs_tales
Messages postés104Date d'inscriptionjeudi 27 septembre 2007StatutMembreDernière intervention 5 octobre 2009 1 févr. 2008 à 14:23
Merci, en vérité c'est 2 lignes ne veulent rien dire pour moi.
Donc je vais chercher un autre script.
Sinon peux tu quand meme me le modifier pour le déplacement s'il te plait.
cs_tales
Messages postés104Date d'inscriptionjeudi 27 septembre 2007StatutMembreDernière intervention 5 octobre 2009 1 févr. 2008 à 17:59
Le site n'est pas encore en ligne car je dois encore régler ce soucis et l'enregistrement des positions.
En fait j'ai fais une iframe pour créer un cadre, puis à l'intérieur il y a la page essai.php.
Le drag n drop s'effectue sur des images de plantes.
C'est images sont bloquées volontairement à 17 px du bas et restent libres d'être déplacées de gauche à droite.
Mon iframe fait 900 px et mon soucis est que je peux déplacer mes images en dehors de ma iframe, en gros mes plantes sortent du cadre.
Je voudrais les bloquer à l'intérieur du cadre.
Cela fait un petit moment que j'essai de trouver une solution, mais je bloque en plus je ne connais pas le js.
Merci de votre aide et de votre rapidité.
Vous n’avez pas trouvé la réponse que vous recherchez ?
PetoleTeam
Messages postés3426Date d'inscriptionlundi 26 décembre 2005StatutMembreDernière intervention14 janvier 201117 4 févr. 2008 à 16:07
Ce que je ne saisi pas bien... c'est que si le SCRIPT appartient au document contenu dans l'IFRAME les éléments glissé doivent disparaitre à l'approche des bords de l'IFRAME.
cs_tales
Messages postés104Date d'inscriptionjeudi 27 septembre 2007StatutMembreDernière intervention 5 octobre 2009 4 févr. 2008 à 17:05
Merci les élements déplaçable disparaissent effectivement.
Sachant que ma page essai.php est inclue dans ma page index.php grace à:
<center>
</center>
Sinon j'ai utilisé le même script sur un autre jeu que j'ai fait.
Sur la carte clique sur foret.
On déplace des arbres et eux aussi disparaissent, sortent de mon cadre.
PetoleTeam
Messages postés3426Date d'inscriptionlundi 26 décembre 2005StatutMembreDernière intervention14 janvier 201117 5 févr. 2008 à 19:17
Bonjour,
je n'ai pas pu accéder à la page que tu indique, problème de loggin?
néanmoins je te livre un exemple complet qui devrait te satisfaire...
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN">
<html>
<head>
<title>[PetoleTeam]Drag Image</title>
<meta name= "Author" content="PetoleTeam">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<style type="text/css">
.gfdrag{
position : absolute;
cursor : move;
}
.image_1 {
background-color : #b0c4de;
left : 10px;
top : 10px;
}
.image_2 {
background-color : #fff0a0;
left : 150px;
top : 50px;
}
.image_3 {
background-color : #ccffcc;
left : 300px;
top : 90px;
}
</style>
<script type="text/javascript">
var DRAG_Objet = null;
var O_Drag = new Object();
var Zindex = 1000;
//-- Definition zone de DRAG
var W_Top = 10;
var W_Left = 10;
var W_Right = 890;
var W_Bottom = 540;
//--------------------------
function isDRAG_Objet( obj_){
while( obj_){
var szClass = obj_.className;
if( szClass)
if( szClass.indexOf("gfdrag") > -1)
return( obj_)
obj_ = obj_.parentNode;
}
return( null);
}
//------------------
function DRAG_Stop(){
if( DRAG_Objet){
DRAG_Objet = null;
}
}
//-------------------
function DRAG_Move(e){
if( DRAG_Objet){
if( e) event = e;
//-- Position d'affichage
var PosX = event.clientX +O_Drag.left -O_Drag.clic_X;
var PosY = event.clientY +O_Drag.top -O_Drag.clic_Y;
//-- Test si dans Zone
if( PosX > W_Left)
if(( PosX +O_Drag.width) < W_Right)
DRAG_Objet.style.left = PosX +"px";
if( PosY > W_Top)
if(( PosY +O_Drag.height) < W_Bottom)
DRAG_Objet.style.top = PosY +"px";
return false;
}
}
//--------------------
function DRAG_Start(e){
var Obj = e? e.target : event.srcElement;
//-- Test si Objet dragable
if(( Obj = isDRAG_Objet( Obj))){
if( e) event = e;
DRAG_Objet = Obj;
//-- Recup Info sur objet
O_Drag.width = Obj.offsetWidth;
O_Drag.height = Obj.offsetHeight;
O_Drag.left = Obj.offsetLeft;
O_Drag.top = Obj.offsetTop;
//-- Position du click de depart
O_Drag.clic_X = event.clientX;
O_Drag.clic_Y = event.clientY;
//-- Met au dessus des autres
Obj.style.zIndex = Zindex++;
return false;
}
}
//-- Evenement sur Mouse
document.onmousedown = DRAG_Start;
document.onmouseup = DRAG_Stop;
document.onmousemove = DRAG_Move;
</script>
</head>
</html>
Il restera sûrement des trucs à adapter, compatible tous navigateurs que j'ai en ma possession sous window
et pour finir
Je sais que tu n'as pas que cà à faire... Ca c'est bien vrai, mais on ne refuse jamais un coup de main
... et je peux payer
si il le faut...
Il y a des pro pour cela, sinon fait plaisir à CodesSources en cliquant sur des lien Sponsorisés il y en à de vraiment très intéressant
...car j'ai vraiment besoin de comprendre, alors... je n'ai pas trop mis de commentaires mais je pense que cela devrait suffire, c'est perfectible mais bon...
cs_tales
Messages postés104Date d'inscriptionjeudi 27 septembre 2007StatutMembreDernière intervention 5 octobre 2009 19 févr. 2008 à 03:07
Bonjour,
J'ai essayé d'enregistrer les positions de mes images aprés le déplacement mais cela ne donne rien.
Vu que c'est ton script tu a peut etre la partie enregistrement?
PetoleTeam
Messages postés3426Date d'inscriptionlundi 26 décembre 2005StatutMembreDernière intervention14 janvier 201117 19 févr. 2008 à 18:04
Bonjour,
Pas sur de bien saisir le besoin d'enregistrer la position des DRAGs...
Sinon pour ce faire il suffit de mettre dans un cookies les valeurs et l'ID draguées lorsque l'on relache la mouse puis au rechargement de la page faire un test si le cookie existe alors on récupère les valeurs et on affiche l'objet à l'endroit souhaité...