需要JS mouseover/popup的帮助:显示在左侧而不是右侧

我正在重新设计我们的网站,我对JS鼠标悬停/弹出窗口有点问题.希望这里有人能帮我.现在,当你将鼠标悬停在广告上时,你会在左侧的弹出窗口中看到该广告的放大版本.我需要做的是让它弹出到右边.
您可以在此处看到当前正在运行的弹出窗口:
Http://www.stltoday.com/autos
转到特色汽车部分.
这是它使用的JS:

选择 | 换行 | 行号
  1. function showAdLeft(objname) {
  2.  
  3.   if(document.getElementById) {
  4.     var adobj=document.getElementById('ad'+objname); // the floating ad
  5.     var obj=document.getElementById(objname); // the graphic link
  6.     var objleft=obj.offsetLeft;
  7.     var objtop=obj.offsetTop;
  8.     var objwidth=obj.offsetWidth;
  9.     var objheight=obj.offsetHeight;
  10.     var objxcenter=(objwidth/2)+objleft;
  11.     var objycenter=(objheight/2) +objtop;
  12.     var objybottom=obj.offsetHeight;
  13.     var adobjwidth=adobj.offsetWidth;
  14.     var adobjheight=adobj.offsetHeight;
  15.     var adobjxcenter=adobjwidth/2;
  16.     var adobjycenter=adobjheight/2;
  17.     adobj.style.left=objleft-adobjwidth;
  18.     adobj.style.top=objycenter-adobjycenter;
  19.     adobj.style.visibility="visible"
  20.   }
  21. }
  22.  
  23. function showAdRight(objname) {
  24.  
  25.   if(document.getElementById) {
  26.     var adobj=document.getElementById('ad'+objname); // the floating ad
  27.     var obj=document.getElementById(objname); // the graphic link
  28.     var objleft=obj.offsetLeft-150;     //Make adjustment for being in right column
  29.     var objtop=obj.offsetTop;
  30.     var objwidth=obj.offsetWidth;
  31.     var objheight=obj.offsetHeight;
  32.     var objxcenter=(objwidth/2)+objleft;
  33.     var objycenter=(objheight/2) +objtop;
  34.     var objybottom=obj.offsetHeight;
  35.     var adobjwidth=adobj.offsetWidth;
  36.     var adobjheight=adobj.offsetHeight;
  37.     var adobjxcenter=adobjwidth/2;
  38.     var adobjycenter=adobjheight/2;
  39.     adobj.style.left=objleft-adobjwidth;
  40.     adobj.style.top=objycenter-adobjycenter;
  41.     adobj.style.visibility="visible"
  42.   }
  43. }
  44.  
  45. function hideAd(objname) {
  46.   if(document.getElementById) {
  47.     adobj=document.getElementById('ad' +objname);
  48.     adobj.style.visibility="hidden"
  49.   }
  50. }
  51.  
  52. // -->
  53. </script>
  54.  

我想这应该是一个很容易解决的问题,但我不知道从哪里开始.再说一次,如果有人能帮忙,我将不胜感激.谢谢!
史蒂夫

# 回答1


只需将大约300px添加到
Style.left
属性,则每次显示它时.
PS:你的网站不是跨浏览器的.这个
鼠标悬停在上方
它在Firefox和Safari中的位置不正确.
# 回答2


当设置左侧和顶部属性时,不要忘记单位,例如"px".这将使它在非IE浏览器中也能工作.

标签: Javascript

添加新评论