J'essaye de définir une position d'arrière-plan du parent. Si je mets le nombre de pixels, cela fonctionne mais ne fonctionne pas avec une variable.

   $('.bg-img').css('background-position', '250px 50%');

Ce qui précède fonctionne.

 var x = $(div).position();
 var posX;

 posX = parseInt(x.left);
 $('.bg-img').css("background-position", "'" + posX + "px 50%'");

Cela ne fonctionne pas. La syntaxe est-elle incorrecte ici?

1
Gene9y 30 août 2020 à 09:45

2 réponses

Meilleure réponse

Je l'écrirais comme:

 $('.bg-img').css("background-position", posX + "px 50%");

C'est juste une chaîne, aucun mélange bizarre de guillemets doubles / simples n'est nécessaire

2
john Smith 30 août 2020 à 06:48

N'utilisez pas "'" lors de la concaténation, vous pouvez faire comme ceci

 posX = parseInt(x.left);

 tempPos =  posX + "px 50%";

$('.bg-img').css("background-position", tempPos);

// or simply as john suggested

 $('.bg-img').css("background-position", posX + "px 50%");

1
Saddam Kamal 30 août 2020 à 06:59