jQuery .offset()在所有浏览器中都不能正常工作
jQuery .offset() doesn't work properly at all in every browser
我定义了这些变量:
var about = 0;
var music = $('.music-main').offset();
var programming = $('.programming-main').offset();
var contact = $('.contact-main').offset();
,然后尝试动画滚动到我的页面上的特定部分的按钮点击。
case 0: $("html, body").animate({ scrollTop: 0}); break;
case 1: $("html, body").animate({ scrollTop: music.top}); break;
case 2: $("html, body").animate({ scrollTop: programming.top}); break;
case 3: $("html, body").animate({ scrollTop: contact.top}); break;
但是它会滚动到不同的位置。它甚至会滚动到每个元素的不同位置。
请确保仅在页面加载后调用偏移量,否则坐标将不正确。
所以像这样做:
$( window ).load(function() {
var about = 0;
var music = $('.music-main').offset();
var programming = $('.programming-main').offset();
var contact = $('.contact-main').offset();
}
最好在点击的瞬间计算偏移量,这样在加载和点击之间页面大小的变化就不会有任何影响:
var about = 0;
var music = $('.music-main');
var programming = $('.programming-main');
var contact = $('.contact-main');
case 0: $("html, body").animate({ scrollTop: 0}); break;
case 1: $("html, body").animate({ scrollTop: music.offset().top}); break;
case 2: $("html, body").animate({ scrollTop: programming.offset().top}); break;
case 3: $("html, body").animate({ scrollTop: contact.offset().top}); break;
相关文章:
- javascript扫雷器floodfill算法不能正常工作
- 为什么这个代码不能正常工作
- 为什么我的JavaScript在Safari上的严格模式下不能正常工作
- 为什么Turbolinks不能正常工作?Rails应用程序
- 用户名输入如果其他块不能正常工作/Javascript-jQuery-AJAX
- 为什么动态加载的事件在我的代码中不能正常工作
- 为什么竞争不能在离子中显示(隐藏在标题下方)(离子竞争不能正常工作)
- 变量只能在函数中局部工作,不能全局工作-Javascript
- 为什么AngularJS$作用域不能正常工作
- q.所有的功能都不能像我希望的那样工作
- 为什么'我的两个脚本都不能在html中工作
- D3条形图在所有负值和正值情况下都不能正常工作
- jQuery .offset()在所有浏览器中都不能正常工作
- 成功和错误都不能在jquery ajax中工作
- 所有由JQuery选择的Primefaces复选框都不能正常工作
- jQuery.每个都不能在窗口中工作.onbeforeunload函数
- 简单的用户脚本在任何地方都不能工作
- jquery的每一个都不能很好地工作,有时它会给出好的结果,有时它不会
- jquery的每个函数都不能按我希望的方式工作
- 流星助手在每个循环中都不能工作