欢迎光临
我们一直在努力

用javascript来获取用户客户端分辨率-ASP教程,ASP应用

建站超值云服务器,限时71元/月

我做了一个网页导航下拉菜单,用firework可以很快生成,只用把代码拷贝到页面中就可以了,可是用户端不同分辨率造成了下拉菜单位置的移动,如何在800和1024的菜单下保持正确的显示,修改js文件中的一个函数就可以,y只不用变化,只用更改x坐标变量即可

function mm_showmenu(menu, x, y, child, imgname) {

if (!window.mmwrotemenu) return;

mm_cleartimeout();

if (menu) {

var obj = find(imgname) || document.images[imgname] || document.links[imgname] || document.anchors[imgname];

if (window.screen.width==800 && window.screen.height==600)//用来800*600分辨率设置

{

x = movexbyslicepos (x-100, obj);

y = moveybyslicepos (y, obj);

}

if (window.screen.width==1024 && window.screen.height==768)// 1024分辨率设置

{

x = movexbyslicepos (x, obj);

y = moveybyslicepos (y, obj);

}

}

if (document.layers) {

if (menu) {

var l = menu.menulayer || menu;

l.top = l.left = 1;

hideactivemenus();

if (this.visibility) l = this;

window.activemenu = l;

} else {

var l = child;

}

if (!l) return;

for (var i=0; i<l.layers.length; i++) {

if (!l.layers[i].ishilite) l.layers[i].visibility = "inherit";

if (l.layers[i].document.layers.length > 0) mm_showmenu(null, "relative", "relative", l.layers[i]);

}

if (l.parentlayer) {

if (x != "relative") l.parentlayer.left = x || window.pagex || 0;

if (l.parentlayer.left + l.clip.width > window.innerwidth) l.parentlayer.left -= (l.parentlayer.left + l.clip.width – window.innerwidth);

if (y != "relative") l.parentlayer.top = y || window.pagey || 0;

if (l.parentlayer.iscontainer) {

l.menu.xoffset = window.pagexoffset;

l.menu.yoffset = window.pageyoffset;

l.parentlayer.clip.width = window.activemenu.clip.width +2;

l.parentlayer.clip.height = window.activemenu.clip.height +2;

if (l.parentlayer.menucontainerbgcolor && l.menu.menubgopaque ) l.parentlayer.document.bgcolor = l.parentlayer.menucontainerbgcolor;

}

}

l.visibility = "inherit";

if (l.menu) l.menu.container.visibility = "inherit";

} else if (find("menuitem0")) {

var l = menu.menulayer || menu;

hideactivemenus();

if (typeof(l) == "string") l = find(l);

window.activemenu = l;

var s = l.style;

s.visibility = "inherit";

if (x != "relative") {

s.pixelleft = x || (window.pagex + document.body.scrollleft) || 0;

s.left = s.pixelleft + px;

}

if (y != "relative") {

s.pixeltop = y || (window.pagey + document.body.scrolltop) || 0;

s.top = s.pixeltop + px;

}

l.menu.xoffset = document.body.scrollleft;

l.menu.yoffset = document.body.scrolltop;

}

if (menu) window.activemenus[window.activemenus.length] = l;

mm_cleartimeout();

}

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » 用javascript来获取用户客户端分辨率-ASP教程,ASP应用
分享到: 更多 (0)