我在我的网站中使用jQuery,并且当某个div可见时我想触发某些操作.
是否有可能将某种"isvisible"事件处理程序附加到任意div并且在div可见时运行某些代码?
我想要像下面的伪代码:
$(function() {
$('#contentDiv').isvisible(function() {
alert("do something");
});
});
Run Code Online (Sandbox Code Playgroud)
在实际使contentDiv可见之前,不应触发警报("执行某些操作")代码.
谢谢.
有没有办法检测元素的"display"css属性是否被更改(无论是否为block或block或inline-block ......)?如果没有,任何插件?谢谢
可能重复:
jQuery - 滚动后检查元素是否可见
我正在尝试确定元素是否在屏幕上可见.为了达到这个目的,我试图使用offsetTop找到元素的垂直位置,但返回的值不正确.在这种情况下,除非向下滚动,否则元素不可见.但是尽管如此,当我的屏幕高度为703时,offsetTop返回值618,因此根据offsetTop,元素应该是可见的.
我正在使用的代码如下所示:
function posY(obj)
{
var curtop = 0;
if( obj.offsetParent )
{
while(1)
{
curtop += obj.offsetTop;
if( !obj.offsetParent )
{
break;
}
obj = obj.offsetParent;
}
} else if( obj.y )
{
curtop += obj.y;
}
return curtop;
}
Run Code Online (Sandbox Code Playgroud)
先感谢您!
是否有任何技术或技术可用于实现JavaScript中的onVisible'事件'实际上是什么?
我希望我的JavaScript能够检测网页中的元素(例如文本段落或图像)在用户向下滚动页面时何时在浏览器窗口中可见.我还想要一个相应的'事件',onNotVisible,当浏览器窗口中曾经可见的元素再也看不到时触发.
如果无法在JavaScript中轻松实现,是否有任何特定于浏览器的事件可以提供相同的功能?
在我的组件可见时,Angular2中是否有一种方法可以触发事件?它被放置在tabcontrol中,我想在用户切换时通知我喜欢我的组件来触发事件.
我希望在滚动时在屏幕上显示该元素时为其添加类:
<button class='btn btn-default' >
Hello
</button>
Run Code Online (Sandbox Code Playgroud)
我希望'btn-default'
在滚动或页面重新加载后按钮在屏幕上可见时添加类.
我已经尝试了很多东西,以此为基础:
(() => {
function getLevelIndentation(level){
return level * 20 + "px";
}
var multiKeyMapFormatter = {
header: function(x) {
if (!(x instanceof MultiKeyMap)){
return null;
}
let textArray = [];
x.forEach((r, u, t, mkm) => textArray.push("[" + t + ", " + u + "] => " + (r instanceof Object ? r.constructor.name : r)));
const header = "MultiKeyMap - " + textArray.join("|").substr(0, 50);
return ["div", {"style":'color: green'}, header]
},
hasBody: function(){
return true;
},
body: function(obj, config){
return …
Run Code Online (Sandbox Code Playgroud) 我在拖动事件后向DOM中添加了一些元素。我需要检测此元素以及添加此元素的时间。我使用Mutation Observer,但是代码有问题:
var targetNodes = $('.mvly');
var MutationObserver = window.MutationObserver || window.WebKitMutationObserver;
var myObserver = new MutationObserver (mutationHandler);
var obsConfig = { childList: true, characterData: true, attributes: true, subtree: true };
targetNodes.each(function(){
myObserver.observe(this, obsConfig);
} );
function mutationHandler (mutationRecords) {
mutationRecords.forEach ( function (mutation) {
if (typeof mutation.addedNodes == "object") {
console.log('test');
}
});
}
Run Code Online (Sandbox Code Playgroud)
任何人都可以帮忙,谢谢。
我正在使用这个插件 - isOnScreen来检查元素是否在视口上可见(检查帖子是否已被查看)。
但是是否有可能有某种回调,而不是有 setTimeOut 并每次检查每个帖子的可见性,而是在相应元素可见时触发回调?
或者我可以使用其他任何图书馆来做到这一点吗?
我说的是视觉视口。(不是 css 可见性)
javascript ×7
jquery ×5
html ×3
angular ×1
events ×1
html5 ×1
offset ×1
position ×1
scroll ×1
typescript ×1