jQuery检查元素在可滚动div中是否可见

好的,我使用以下代码来检查元素是否在屏幕上可见。

(function($) { /** * Copyright 2012, Digital Fusion * Licensed under the MIT license. * http://teamdf.com/jquery-plugins/license/ * * @author Sam Sehnert * @desc A small plugin that checks whether elements are within * the user visible viewport of a web browser. * only accounts for vertical position, not horizontal. */ $.fn.visible = function(partial) { var $t = $(this), $w = $(window), viewTop = $w.scrollTop(), viewBottom = viewTop + $w.height(), _top = $t.offset().top, _bottom = _top + $t.height(), compareTop = partial === true ? _bottom : _top, compareBottom = partial === true ? _top : _bottom; return ((compareBottom = viewTop)); }; })(jQuery); 

但是,我想使用这段代码,以便检查它是否在可滚动元素中可见。 特别是我用于主要内容的主要标签。 我将如何更改此代码以使其适用于我的可滚动元素? 我不太清楚该怎么做。 我已经尝试将$ w变量更改为$(’main’),但这似乎表现得很奇怪。

但是,我想使用这段代码,以便检查它是否在可滚动元素中可见。

该插件仅限于检测身体的直接孩子。 这几乎使任何嵌套元素都无法被插件检测到。 看到这个解释 。