J'essaie de calculer la moitié de la largeur d'un objet en utilisant Javascript.

    var img = document.getElementById('picture1'); 
    var width = img.clientWidth;
    var halfwidth = width/2;  

J'ai ensuite besoin de brancher cette variable dans un modificateur jquery css pour margin-left. Cela sera utilisé pour positionner l'image au centre exact de la page.

    $('#div').css('margin-left','-400px');

Mais au lieu de -400px, j'ai besoin d'une variable. Cela peut-il être accompli?

0
user981053 21 déc. 2011 à 12:52

4 réponses

Meilleure réponse

Je pense que cela fonctionnera pour vous:

$('#div').css('margin-left','-' + ($('#picture1').width()/2) + 'px');
1
PiTheNumber 21 déc. 2011 à 08:56

Voici comment positionner l'image au centre de la page http://jsfiddle.net/JkZdH/

var img = $('#myImg'),
    docWidth = $(document.body).width(),
    imgWidth = img.outerWidth(true),
    marginLeft = (docWidth - imgWidth) / 2;
img.css('margin-left', marginLeft);

Pour html:

<img src="sample_image.png" alt="dog" id="myImg" />
1
Minko Gechev 21 déc. 2011 à 10:20
 $('#div').css({marginLeft : $('#picture1').width()/2});
0
gion_13 21 déc. 2011 à 08:57

Rester simple

$('#div').css('margin-left','-'+(parseInt($('#picture1').width())/2)+'px');
1
OptimusCrime 21 déc. 2011 à 08:58
8587152