Редактировать: оба других ответа, очевидно, намного лучше, чем этот. Респект: -)
В первом работающем примере this
- это DOMElement , по которому щелкнули: this.progress
Во втором примере, когда используется $.proxy
, this
относится к окружающему контексту , а не к элементу progress
.
Таким образом, в обработчике Proxy вы должны использовать:
this.progress.get(0).offsetLeft
// .get(0) is to obtain the DOMElement
// and get access to the javascript property offsetLeft
вместо this.offsetLeft
.