为了制作一个类似于dropbox的登录按钮的按钮,我关注了这篇文章。
更具体地说,这是我正在使用的代码:
echo '<a href="#" id ="loginbutton"></a>';
echo '<div id = "popup">';
echo '<div id = "popupimage"> </div>';
//HTML INSIDE POPUP
echo '</div>';
echo '<script type="text/javascript" src="jquery.js"></script>';
echo '<script>';
echo '$("#loginbutton").click(function(e){';
echo '$("#popup").css("visibility","visible");';
echo 'e.stopPropagation();';
echo '});';
echo '$("#popup").click(function(e){';
echo 'e.stopPropagation();';
echo '});';
echo '$("body").click(function(e){';
echo '$("#popup") . css("visibility", "hidden");';
echo '});';
CSS:
#logbutton{
top:50px;
left:850px;
position: absolute;
background-image: url(../images/buttons/loginbutton.png);
width:59px;
height:28px;
}
#popupimage{
top:63px;
left:887px;
position: absolute;
background-image: url(../images/popupimage.png);
visibility: hidden;
width:400px;
height:600px;
}
该按钮有效,并且弹出窗口也会出现。
弹出图像的 css 指定了图像将出现的绝对位置,这就是导致问题的原因。我现在希望在按钮之前添加一些动态内容,因此我无法真正确定按钮将在哪个位置。这导致弹出图像未放置在按钮附近。
是否可以知道按钮的绝对位置,以便我可以将弹出图像(使用 jquery)设置为出现在它旁边。请记住,由于我之前有动态文本,它没有固定的固定位置。