我在打字稿中使用jQuery,并希望添加平滑的滚动。
我收到一个错误jquery中的$ .attr:类型“ JQueryStatic”上不存在属性“ attr”
如何处理此错误?
$(document).on('click', 'a[href^="#"]', function (event) {
event.preventDefault();
$('html, body').animate({
scrollTop: $($.attr(this, 'href')).offset().top
}, 500);
});
答案 0 :(得分:0)
尝试这样的事情:
$(document).on('click', 'a[href^="#"]', function (event) {
event.preventDefault();
var offset = $(this).offset().top;
$('html, body').animate({
scrollTop: offset
}, 500);
});
我认为应该遵循这些原则。我认为您要尝试获取的属性偏移量是无效的:
$(this).attr('href').offset // undefined
您需要获取刚刚单击的元素的偏移量。
$(this).offset().top