如果 window 曾经去过这些坐标那么...如果没有那么
If window has ever been to these coordinates then... if not then
我访问了 theannoyingsite.com,我注意到 windows 突然出现并四处走动。 (我去那里看看能不能偷看源代码。)
我能做到。
我的代码是-
<!doctype html>
<html>
<head>
<title>testing123</title>
</head>
<body>
<button id="button">testing123</button>
</body>
</html>
(function() {
var bottomofwin = document.activeElement.clientHeight;
document.getElementById("button").onclick = function() {
var wnd = window.open("about:blank", "test", "height=120px, width=120px");
setInterval(function() {
if(wnd.screenY != bottomofwin) {
wnd.moveBy(0, 100);
}else{
wnd.moveBy(0, -100);
}
}, 2000);
return false;
};
})();
我试图制作一个片段,但 Whosebug 产生了一个错误。所以这是 JSFiddle - https://jsfiddle.net/tLf0aey2/ 我希望它在屏幕上弹跳。
你的window动作很好。要使 window 反弹,您需要跟踪其方向。
添加变量
var bottomofwin = window.screen.height; // This worked better for me...
var vertical_velocity = 1 // 1 = Down and -1 = Up
然后检查弹窗是否触及上边界或下边界,并相应改变方向:
if (wnd.screenY <= 20) {
vertical_velocity = 1
}
if (wnd.screenY >= bottomofwin - 140) {
vertical_velocity = -1
}
然后使用 vertical_velocity
作为您的 moveBy
的乘数
wnd.moveBy(0, vertical_velocity*100);
对水平方向执行相同的操作。
这是我的原型https://jsfiddle.net/sr86zb4L/
也许您需要稍微调整一下边距。
那你离真的很烦人更近了一步:D
我访问了 theannoyingsite.com,我注意到 windows 突然出现并四处走动。 (我去那里看看能不能偷看源代码。)
我能做到。
我的代码是-
<!doctype html>
<html>
<head>
<title>testing123</title>
</head>
<body>
<button id="button">testing123</button>
</body>
</html>
(function() {
var bottomofwin = document.activeElement.clientHeight;
document.getElementById("button").onclick = function() {
var wnd = window.open("about:blank", "test", "height=120px, width=120px");
setInterval(function() {
if(wnd.screenY != bottomofwin) {
wnd.moveBy(0, 100);
}else{
wnd.moveBy(0, -100);
}
}, 2000);
return false;
};
})();
我试图制作一个片段,但 Whosebug 产生了一个错误。所以这是 JSFiddle - https://jsfiddle.net/tLf0aey2/ 我希望它在屏幕上弹跳。
你的window动作很好。要使 window 反弹,您需要跟踪其方向。
添加变量
var bottomofwin = window.screen.height; // This worked better for me...
var vertical_velocity = 1 // 1 = Down and -1 = Up
然后检查弹窗是否触及上边界或下边界,并相应改变方向:
if (wnd.screenY <= 20) {
vertical_velocity = 1
}
if (wnd.screenY >= bottomofwin - 140) {
vertical_velocity = -1
}
然后使用 vertical_velocity
作为您的 moveBy
wnd.moveBy(0, vertical_velocity*100);
对水平方向执行相同的操作。
这是我的原型https://jsfiddle.net/sr86zb4L/
也许您需要稍微调整一下边距。
那你离真的很烦人更近了一步:D