我的标题中有一个下拉菜单,我想要点击标题中的按钮时,下拉菜单会显示该按钮。
按钮位置是绝对的,我使用jquery位置来获取该按钮的左下角。但这只是在firefox中工作。为什么呢?
这是我的代码:
var search_div_top=($("#search-div").position().top);
var search_div_left=($("#search-div").position().left);
这是我的css:
#search-div{
width:200px;
height:60px;
/*center:*/
position:absolute;
left:0;
right:0;
top:0;
bottom:0;
margin:auto;
}
只是firefox返回该元素左右的实数,其他返回0. #search-div
的父级是relative
。
答案 0 :(得分:0)
有什么问题?
Chrome和其他浏览器(不是Firefox)的问题是:
position:absolute;
left:0;
right:0;
top:0;
bottom:0;
margin:auto;
使用上面的CSS,div将显示在其父级的中心,如果您在上面的代码中看到我们有left:0
和right:0
,则Chrome会看到此代码并获取其中一个并从左侧开始或者右边有0值。
所以,解决方案是什么:
在jquery中有一个获取元素位置的函数,只需使用以下代码:
var search_div_top=($("#search-div").offset().top);
var search_div_left=($("#search-div").offset().left);