jquery – 如何获取一个iframe的scrollTop

栏目: jQuery · 发布时间: 7年前

内容简介:当window是一个iframe时,jQuery的scrollTop返回null.有谁能够弄清楚如何获取一个iframe的scrollTop?更多信息:我的脚本正在运行在iframe本身,父窗口在另一个域,所以我无法访问iframe的ID或任何类似的

当window是一个iframe时,jQuery的scrollTop返回null.有谁能够弄清楚如何获取一个iframe的scrollTop?

更多信息:

我的脚本正在运行在iframe本身,父窗口在另一个域,所以我无法访问iframe的ID或任何类似的

您可以使用此设置设置scrollTop:

$("html,body").scrollTop(25);

所以你可以尝试这样做:

$("html,body").scrollTop();

因为不同的浏览器将scrollTop设置在不同的元素(body或html)上.

从scrollTo插件:

但是在某些浏览器中可能仍然会失败.以下是 Ariel Flesher’s scrollTo plugin for jQuery 源代码的相关部分:

// Hack, hack, hack :)
// Returns the real elements to scroll (supports window/iframes, documents and regular nodes)
$.fn._scrollable = function(){
  return this.map(function(){
    var elem = this,
      isWin = !elem.nodeName || $.inArray( elem.nodeName.toLowerCase(), ['iframe','#document','html','body'] ) != -1;

    if( ! isWin ) {
      return elem;
    }


    var doc = (elem.contentWindow || elem).document || elem.ownerDocument || elem;

     return $.browser.safari || doc.compatMode == 'BackCompat' ?
       doc.body : 
       doc.documentElement;
  });
};

然后您可以运行:

$(window)._scrollable().scrollTop();

确定iframe向下滚动的距离.

http://stackoverflow.com/questions/1852518/how-to-get-scrolltop-of-an-iframe


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

算法之美

算法之美

[美]布莱恩·克里斯汀、[美]汤姆·格里菲思 / 万慧、胡小锐 / 中信出版集团 / 2018-5-20 / 59.00

我们所有人的生活都受到有限空间和有限时间的限制,因此常常面临一系列难以抉择的问题。在一天或者一生的时光里,哪些事是我们应该做的,哪些是应该放弃的?我们对杂乱无序的容忍底线是什么?新的活动与熟悉并喜爱的活动之间如何平衡,才能取得令人愉快的结果?这些看似是人类特有的难题,其实不然,因为计算机也面临同样的问题,计算机科学家几十年来也一直在努力解决这些问题,而他们找到的解决方案可以给我们很多启发。 ......一起来看看 《算法之美》 这本书的介绍吧!

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器

RGB HSV 转换
RGB HSV 转换

RGB HSV 互转工具

HSV CMYK 转换工具
HSV CMYK 转换工具

HSV CMYK互换工具