当客户端在视口中有元素时,有没有办法在jQuery中触发事件?
例如,假设我在jQuery中选择了这个元素:
$('#star')
然后,当该元素在视口中可见时,我想立即运行动画。
任何想法是否有办法做到这一点,因为我已经在jQuery检查了纪录片,但我无法找到这样做的事件。
谢谢
答案 0 :(得分:2)
试试此代码
$(function() {
if ($("#star").length > 0) {
//do something
}
});
.length()可用于查找元素是否存在。
答案 1 :(得分:0)
如果此选择器$('#star')
返回任何内容,那么它已经在浏览器/视口中。在这种情况下,您可以使用:
if (document.getElementById('star')) {
// do something
}
或
var star = $('#star');
if (star.length) {
start.trigger('click');
// or something else you need
}
如果您想在页面加载时触发某些内容,最好使用:
$(function(){
// do something because the DOM is ready
});