5

我找到了这个:

getViewport = function () {
  var m = document.compatMode == 'CSS1Compat';
  return {
    l : window.pageXOffset || (m ? document.documentElement.scrollLeft : document.body.scrollLeft),
    t : window.pageYOffset || (m ? document.documentElement.scrollTop : document.body.scrollTop),
    w : window.innerWidth || (m ? document.documentElement.clientWidth : document.body.clientWidth),
    h : window.innerHeight || (m ? document.documentElement.clientHeight : document.body.clientHeight)
  };
};

但是 jQuery 是否为此提供了内置函数?

4

1 回答 1

11

虽然没有一个内置函数,但函数本身可以使用 jQuery 函数进行简化:

getViewport = function() {
    var $w = $(window);
    return {
        l: $w.scrollLeft(),
        t: $w.scrollTop(),
        w: $w.width(),
        h: $w.height()
    }
}

在这里进行了测试:http: //jsfiddle.net/naLLa/

您可能还会发现这个插件感兴趣,它添加了基于视口的选择器:http: //www.appelsiini.net/projects/viewport

于 2012-04-25T23:54:39.413 回答