Si tratta di una ri-do di una domanda che è stato chiuso erroneamente: jQuery 1.8 outer Height/Width not workingjQuery 1.8.2 + non corrente jQuery UI = outerWidth e outerHeight rotto
Sto colpendo lo stesso problema. outerWidth
e outerHeight
e ora restituisce l'oggetto jQuery anziché i numeri.
Stiamo usando jQuery UI 1.8.17, rilasciato il 10 gennaio 2012. Non è una versione super vecchia, quindi ho la sensazione che le altre persone vedranno questo. Siamo bloccati in questa versione a causa di alcuni terribili plugin ui jQuery, quindi l'aggiornamento non è attualmente un'opzione.
Se trovo una soluzione, risponderò a questa domanda.
Ecco un violino che dimostra il problema http://jsfiddle.net/delvarworld/yxDHu/ (versione jQuery UI aggiunto in "gestione delle risorse")
Aggiornamento: È perché questa linea in jQuery UI:
return orig[ "outer" + name ].call(this, size);
viene erroneamente innescare questa condizione in jQuery 1.8.2:
var chainable = arguments.length && (defaultExtra || typeof margin !== "boolean"),
perché anche se size
è indefinito, l'assegno è per arguments.length
. chainable dovrebbe essere falso qui. È possibile passare in modo indefinito e renderà gli argomenti ancora un oggetto con lunghezza 1. Qualcuno deve leggere il proprio JS;)
Bug aperto: http://bugs.jquery.com/ticket/12647 –
+1 per riaprire la questione. secondo http://api.jquery.com/outerHeight/ 'includeMargin' è un parametro facoltativo, ma se non è impostato su true/false lo still (jquery 1.8.3) restituisce l'elemento. – roberkules