检测iframe中的滚动到底部?

时间:2015-04-17 15:16:48

标签: jquery iframe scroll

我使用以下事件来检测滚动时是否到达页面底部:

     $(window).scroll(function() {  
       if($(window).scrollTop() == $(document).height()-$(window).height())
         alert('Bottom reached');    
       }
     });

这在普通页面上运行正常,但现在我希望这可以在iframe 中 的页面上运行。必须在iframe的页面内声明此事件。 但window指向包含iframe的网页,因此我无法使用该网页。

有什么想法吗?

1 个答案:

答案 0 :(得分:0)

var currAgreementTab = this.get('parentController')。get('currAgreement');  var contractContainer = Ember。$('div#marginContractContainer');   var iframe = contractContainer.children(currAgreementTab.element)[0] .contentWindow;

        if (iframe) {
            iframe.onscroll = function() {
                var scrolledHeight = Ember.$(iframe).height() === Ember.$(iframe.document).innerHeight() ? Ember.$(iframe).height() : Ember.$(iframe.document).innerHeight() - Ember.$(iframe).height();

                if (Ember.$(iframe).scrollTop()  === scrolledHeight) {
                    var currAgreementTab = that.get('parentController').get('currAgreement');
                    Ember.set(currAgreementTab, 'checkDisabled', false);
                }
            }
        }