$(this)[0].offsetWidth
offsetWidth
является свойством элементов. В коде обратного вызова window.onresize
, this
- это Window
, который не имеет offsetWidth.
Что должно быть this
? (Событие onresize
отсутствует в связанном коде.) Если вы хотите прочитать ширину окна, используйте $(window).width()
.
Если вы хотите прочитать ширину какого-либо другого элемента (предка?), Который у вас был как this
во вложенной области видимости, вы должны либо найти этот элемент, оторвавшись от элемента resize
, либо сохранить ссылку к другому элементу в замыкании, например ::
var that= this;
$(window).resize(function() {
resize.style.marginRight= resize.offsetWidth-that.offsetWidth+'px'
});
(примечание. $(this)[0]
точно ничего не делает.)