je voudrais déplacer un span en position relative
j'ai une fonction qui me dit si il y a un clic ou pas, et une fonction qui déplace si y a le clic et que la souris bouge (ça fonctionne pour le scroll, je me suis dis que ça ferait pareil... apparament pas...)
voici la fonction :
function deplacenote(obj,event
{
var e = event || window.event;
var nx = e.clientX;
var ny = e.clientY;
if (clicenbas)
{
var diffx = oldx-nx;
var diffy = oldy-ny;
obj.style.left = (obj.style.left - nx)+'px';
obj.style.bottom = (obj.style.bottom - nx)+'px';
}
oldx=nx;
oldy=ny;
}
oui, quand je tente de déplacer ça fait une erreur
Citation : Xiarea
Erreur CSS : Erreur d'analyse de la valeur pour "bottom". Déclaration abandonnée.
j'ai rien d'autre...
Edit : Si, j'ai la même erreur pour left! ça rassure plus ou moins étant donné que je fais la même chose pour left et pour bottom...
/*
fonction déplacement des annotations
*/
function deplacenote(obj,event)
{
var e = event || window.event;
var nx = e.clientX;
var ny = e.clientY;
if (clicenbas)
{
var diffx = parseInt(oldx)-parseInt(nx);
var diffy = parseInt(oldy)-parseInt(ny);
obj.style.bottom = (parseInt(obj.style.bottom) + parseInt(diffy))+'px';
obj.style.left = (parseInt(obj.style.left) - parseInt(diffx)) +'px';
}
oldx = nx;
oldy = ny;
}
/*
Fonction de défilement en cliquer/glisser
>>initialisée par la fonction clicsouris
>>action par la fonction scroll
*/
function clicsouris (valeur, event)
{
if(event.preventDefault) //pour éviter la copie d'image de firefox
{
event.preventDefault();
}
var e = event || window.event;
oldx = e.clientX;
oldy = e.clientY;
clicenbas = valeur;
}
et le CSS, si ça aide :
a.infobulleniveau span, a.infobulleformeonde span, a.infobullepensebete span, a.infobulledessin span
{
display :none;
}
span.bulle
{
width : 250px;
background-color : #FFFFB8;
position : relative;
}
/* Rend visible le bloc span au survol de la souris */
a.infobulleniveau:hover span, a.infobulleniveau:focus span , a.infobulleniveau:active span, /* y a tout une liste de type d'infobulles je coupe ici!*/
{
position : relative;
display : block;
width : 250px;
text-decoration : none;
bottom : 16px;
margin : 0px;
}
Voila
Edit : Est ce que le fait que mon span est en position relative par hazard?
Une petit erreur en fait : les valeurs de obj.style.left et obj.style.bottom ne sont pas initialisées.
Du coup quand JS tente de faire le calcul ça ne fonctionne pas.
solution :
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.