javascript - 可见时动画盒阴影

标签 javascript jquery css

我们有一张图片,当它在页面上可见时,我们想通过向它添加一个类来为它的框阴影设置动画。下面的代码适用于其他可见的元素,但不会将类添加到我们想要的 div 中。也许 .closest 不是正确的选择。

有什么想法吗?

<div class="test-thewinner">
<img class="img-winner" src="xxx.png" alt="test-desktop">
<div class="test-shadow"></div>
</div>



              /* highlight border of winner */
    $('.img-winner').each( function(i){

        var bottom_of_object = $(this).offset().top + $(this).outerHeight();
        var bottom_of_window = $(window).scrollTop() + $(window).height();

        /* If the object is completely visible in the window, animate border or box shadow */
        if( bottom_of_window > bottom_of_object ){

        $(this).closest('.test-shadow').addClass('greenit');

        }

    }); 

最佳答案

绝对 .closest 不是正确的选择,因为它会搜索相关元素的父元素。将其更改为 $(this).next().addClass('greenit');$(this).next('.test-shadow').addClass('greenit '); 如果中间可能有 sibling 。

关于javascript - 可见时动画盒阴影,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38533790/

相关文章:

javascript - document.getElementById 通过 JS 而不是 HTML 给出 Null

javascript - 在 jquery mobile 中将日期从 json 转换为常规范式

jquery - 如何使用 JQuery 在特定点拆分 DIV?

html - Cuelinks 小部件的一半被隐藏在 WordPress 网站上

html - 用 CSS 显示或不显示一行

javascript - 如何根据javascript中的条件渲染模板

javascript - 无法在 Angular JS Promise 中抛出错误

javascript - JS removeChild 只有一半时间有效

jquery - 有条件地添加到 jQuery .when

javascript - 菜单上的文本重叠( Bootstrap )