让 child windows 出现在随机位置
Make child windows appear at random locations
^^ 刚刚有人帮我搭建了一个小网站,现在有了不同的想法。
http://alexalmaguer.site90.com/
每当我单击其中一个按钮时,最多会出现 5 个 child windows,并且它们都显示在屏幕中央,因为下面的脚本告诉它们这样做。当只有一个 window 打开时这很好,但现在它们都出现在彼此之上。有什么办法可以改变它,让 windows 出现在随机位置吗?
function wopen(url, name, w, h)
{
w += 32;
h += 96;
wleft = (screen.width - w) / 2;
wtop = (screen.height - h) / 2;
if (wleft < 0) {
w = screen.width;
wleft = 0;
}
if (wtop < 0) {
h = screen.height;
wtop = 0;
}
var win = window.open(url, name,
'width=' + w + ', height=' + h + ', ' +
'left=' + wleft + ', top=' + wtop + ', ' +
'location=no, menubar=no, ' +
'status=no, toolbar=no, scrollbars=no, resizable=no');
win.resizeTo(w, h);
win.moveTo(wleft, wtop);
win.focus();
}
- 随机wleft and/or wtop
- 删除参数中的空格和任何 =no 参数,因为这是默认值。
- 删除不需要的功能,除非它们在旧版浏览器上需要
function wopen(url, name, w, h) {
w += 32;
h += 96;
wleft = (screen.width - w) / 2;
wtop = (screen.height - h) / 2;
if (wleft < 0) {
w = screen.width;
wleft = 0;
}
if (wtop < 0) {
h = screen.height;
wtop = 0;
}
if (wleft > 0) {
wleft = Math.floor(Math.random() * wleft); // for example
}
var win = window.open(url, name,
'width=' + w + ',height=' + ',left=' + wleft + ',top=' + wtop);
win.focus();
}
替代方案是不随机化,但记住坐标并每次添加 window 宽度
另一种方法是打开 window,左上角对齐鼠标点击坐标
^^ 刚刚有人帮我搭建了一个小网站,现在有了不同的想法。
http://alexalmaguer.site90.com/
每当我单击其中一个按钮时,最多会出现 5 个 child windows,并且它们都显示在屏幕中央,因为下面的脚本告诉它们这样做。当只有一个 window 打开时这很好,但现在它们都出现在彼此之上。有什么办法可以改变它,让 windows 出现在随机位置吗?
function wopen(url, name, w, h)
{
w += 32;
h += 96;
wleft = (screen.width - w) / 2;
wtop = (screen.height - h) / 2;
if (wleft < 0) {
w = screen.width;
wleft = 0;
}
if (wtop < 0) {
h = screen.height;
wtop = 0;
}
var win = window.open(url, name,
'width=' + w + ', height=' + h + ', ' +
'left=' + wleft + ', top=' + wtop + ', ' +
'location=no, menubar=no, ' +
'status=no, toolbar=no, scrollbars=no, resizable=no');
win.resizeTo(w, h);
win.moveTo(wleft, wtop);
win.focus();
}
- 随机wleft and/or wtop
- 删除参数中的空格和任何 =no 参数,因为这是默认值。
- 删除不需要的功能,除非它们在旧版浏览器上需要
function wopen(url, name, w, h) {
w += 32;
h += 96;
wleft = (screen.width - w) / 2;
wtop = (screen.height - h) / 2;
if (wleft < 0) {
w = screen.width;
wleft = 0;
}
if (wtop < 0) {
h = screen.height;
wtop = 0;
}
if (wleft > 0) {
wleft = Math.floor(Math.random() * wleft); // for example
}
var win = window.open(url, name,
'width=' + w + ',height=' + ',left=' + wleft + ',top=' + wtop);
win.focus();
}
替代方案是不随机化,但记住坐标并每次添加 window 宽度
另一种方法是打开 window,左上角对齐鼠标点击坐标