相关疑难解决方法(0)

JavaScript获取窗口X/Y位置以进行滚动

我希望找到一种方法来获取当前可视窗口的位置(相对于总页面宽度/高度),这样我就可以使用它来强制从一个部分滚动到另一个部分.但是,当猜测哪个对象拥有您浏览器的真实X/Y时,似乎有大量选项.

我需要确保IE 6 +,FF 2+和Chrome/Safari的哪些工作?

window.innerWidth
window.innerHeight
window.pageXOffset
window.pageYOffset
document.documentElement.clientWidth
document.documentElement.clientHeight
document.documentElement.scrollLeft
document.documentElement.scrollTop
document.body.clientWidth
document.body.clientHeight
document.body.scrollLeft
document.body.scrollTop
Run Code Online (Sandbox Code Playgroud)

还有其他人吗?一旦我知道窗口在哪里,我就可以设置一个慢慢调用的事件链,window.scrollBy(x,y);直到达到我想要的点.

javascript

196
推荐指数
3
解决办法
33万
查看次数

使用CSS3动画滚动

有没有办法用CSS3动画滚动?

像这样的东西?

@-webkit-keyframes scrolltoview
{
    0%   { scrollTop: 0; }
    100% { scrollTop: 30%; }
}
Run Code Online (Sandbox Code Playgroud)

如何把css放在动画的起点?

html javascript css html5 css3

18
推荐指数
2
解决办法
2万
查看次数

jQuery $(窗口).scroll和Internet Explorer(8-9)

http://jsfiddle.net/CbL7W/滚动事件行为的示例.

我有这个在Chrome和Firefox中都能正常运行的脚本.

var stickyNavigationOffsetTop = $('.top-nav').offset().top;
var stickyNavigation = function () {
    var scrollTop = $(window).scrollTop();
    if (scrollTop > stickyNavigationOffsetTop) {
        $('.top-nav').css({ 'position': 'fixed', 'top': 0, 'left': 0, 'opacity': .8 });
    } else {
        $('.top-nav').css({ 'position': 'relative', 'opacity': 1 });
    }
};
stickyNavigation();
$(window).scroll(function () {
    stickyNavigation();
});
Run Code Online (Sandbox Code Playgroud)

但是Internet Explorer存在一些问题:在同一页面上我有这个脚本我有一个隐藏div的脚本的链接,当这种情况发生时有时页面会完全滚动回到页面顶部,但IE不是$(window).scroll当发生这种情况时开火

页面返回顶部时的问题的屏幕截图.

Chrome(OK):http: //i.stack.imgur.com/6WJx7.jpg

IE(错误):http: //i.stack.imgur.com/CXbKk.jpg

jquery internet-explorer scroll

6
推荐指数
1
解决办法
1万
查看次数

简单滚动javascript - 我可以干净地将一个类添加到多个其他类吗?

我只是想知道是否有办法压缩这个脚本?我的JS非常粗糙,但似乎我应该能够插入一个或运算符来为任何传递的类添加收缩类,但我似乎无法获得正确的语法.它似乎有很多冗余.

$(window).scroll(function() {
  if ($(document).scrollTop() > 50) {
    $('nav').addClass('shrink');
  } else {
    $('nav').removeClass('shrink');
  }
    if ($(document).scrollTop() > 50) {
    $('.nav a').addClass('shrink');
  } else {
    $('.nav a').removeClass('shrink');
  }
    if ($(document).scrollTop() > 50) {
    $('.navbar-brand').addClass('shrink');
  } else {
    $('.navbar-brand').removeClass('shrink');
  }
});
Run Code Online (Sandbox Code Playgroud)

或者有没有办法将类添加到给定元素的所有子元素?

javascript jquery

2
推荐指数
1
解决办法
83
查看次数

标签 统计

javascript ×3

jquery ×2

css ×1

css3 ×1

html ×1

html5 ×1

internet-explorer ×1

scroll ×1