[Mise à jour]
L'original de la réplique a été écrit avant jQuery 1.3, et les fonctions qui existaient au moment où elles ne sont pas suffisantes pour calculer la largeur.
Maintenant, comme J-P correctement unis, jQuery a les fonctions outerWidth et outerHeight incluent l' border
et padding
par défaut, et aussi l' margin
si le premier argument de la fonction est - true
[Réponse originale à cette question]
L' width
méthode ne nécessite plus l' dimensions
plugin, car il a été ajouté à l' jQuery Core
Ce que vous devez faire est d'obtenir la marge, la marge et la largeur de la bordure-les valeurs de la div et les ajouter à la suite de l' width
méthode
Quelque chose comme ceci:
var theDiv = $("#theDiv");
var totalWidth = theDiv.width();
totalWidth += parseInt(theDiv.css("padding-left"), 10) + parseInt(theDiv.css("padding-right"), 10); //Total Padding Width
totalWidth += parseInt(theDiv.css("margin-left"), 10) + parseInt(theDiv.css("margin-right"), 10); //Total Margin Width
totalWidth += parseInt(theDiv.css("borderLeftWidth"), 10) + parseInt(theDiv.css("borderRightWidth"), 10); //Total Border Width
Divisé en plusieurs lignes pour le rendre plus lisible
De cette façon, vous obtiendrez toujours la bonne valeur calculée, même si vous modifiez le remplissage ou la marge des valeurs de la css