[英]adding class to button when another element is scrolled into the viewport
我有一个静态按钮和一个滚动元素。 当可滚动元素进入浏览器视口时,我希望静态按钮获得一个类(例如下划线)。 我现在有这个,但它不起作用:
function isScrolledIntoView(elem) {
var docViewTop = jQuery(window).scrollTop();
var docViewBottom = docViewTop + jQuery(window).height();
var elemTop = jQuery(elem).offset().top;
var elemBottom = elemTop + jQuery(elem).height();
return ((elemBottom <= docViewBottom) && (elemTop >= docViewTop));
}
jQuery(window).scroll(function () {
jQuery('#my-scrolling-element').each(function () {
if (isScrolledIntoView(this) === true) {
jQuery('#my-static-button').addClass('my-class');
}
});
});
任何帮助将非常感激
如果您想将类添加到输入类型的元素,那么下面的代码将起作用。
jQuery(window).scroll(function() { element = jQuery('#my-scrolling-element'); if (isScrolledIntoView(element) === true) { jQuery('#my-static-button') //if the type of element is input then it will work. $("input[id^='my-scrolling-element_']").addClass('my-class'); } else { jQuery('#my-static-button').removeClass('my-class'); } }); //OR jQuery(window).scroll(function() { element = jQuery('#my-scrolling-element'); if (isScrolledIntoView(element) === true) { jQuery('#my-static-button').addClass('my-class'); } else { jQuery('#my-static-button').removeClass('my-class'); } });
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.