下面是我做的效果,我实现的功能是输入@自动出现好友的下拉菜单(仿效新浪做的),大家看到了下拉框的位置不对,有谁给个方向呀,网上关于定位的基本都是以元素为起始点进行定位的
我js代码为:
$("#msgBox").change(function () {
var word = $("#msgTxt").val();
if(word.substring(world.length-1,world.length)=='@')
{
//添加好友提醒框
myfriendList('${friends}',this);
}
} //输入框中@提醒
function myfriendList(friends,me)
{
//显示位置,但这只是输入框的位置,我想要的当前聚焦的位置呀
var height = $(me).height();
var top = $(me).offset().top+height;
var left = $(me).offset().left ; ....这里就是添加一个friendsBox下拉框元素,代码有点长,大家看的头疼,就滤掉了 //摆放friendsBox下拉框的位置
$("#friendsBox").css({'top':top, 'left':left});
}
我js代码为:
$("#msgBox").change(function () {
var word = $("#msgTxt").val();
if(word.substring(world.length-1,world.length)=='@')
{
//添加好友提醒框
myfriendList('${friends}',this);
}
} //输入框中@提醒
function myfriendList(friends,me)
{
//显示位置,但这只是输入框的位置,我想要的当前聚焦的位置呀
var height = $(me).height();
var top = $(me).offset().top+height;
var left = $(me).offset().left ; ....这里就是添加一个friendsBox下拉框元素,代码有点长,大家看的头疼,就滤掉了 //摆放friendsBox下拉框的位置
$("#friendsBox").css({'top':top, 'left':left});
}
设置div top:
文本域top +rc*行高 - 文本域的滚动高度