日期:2014-05-16  浏览次数:20313 次

Jquery创建新div,并定位到鼠标位置怎么实现
想用div做个提示框的效果,但是定位不在鼠标的位置,不知道怎么解决,有没有大虾帮忙看下,代码如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>创建div显示元素信息:DOM操作</title>
<script type="text/javascript" src="jquery-1.5.1.min.js"></script>
</head>

<body>
<a class="tooltip" title="12345" href="javascript:;">123</a>
</body>

<script type="text/javascript">
 $(function(){
$('.tooltip').mouseover(function(e){
this.mytitle=this.title;
this.title="";
var tooltip='<div id="tooltip">'+this.mytitle+'</div>';
$('body').append(tooltip); $('#tooltip').css({background:'red',postion:'absolute',height:'30px',width:'60px'});
$('#tooltip').css(
{top:"e.pageY",left:"e.pageX"})
})
 
.mouseout(function(){
this.title=this.mytitle;
$('#tooltip').remove(); 
});
});
</script>
</html>

------解决方案--------------------
把e.pageY改为e.clientY,e.pageX改为e.clientX应该就可以了
------解决方案--------------------
我把<script>重新写了一下,你看是不是想要的效果
<script type="text/javascript">
 $(function(){
$('.tooltip').mouseover(function(e){
this.mytitle=this.title;
this.title="";
var tooltip='<div id="tooltip">'+this.mytitle+'</div>';
var y = e.pageY +20;
var x = e.pageX -10;
$(tooltip).css({background:'red',position:'absolute',height:'30px',width:'60px',top:y+'px',left:x+'px'}).appendTo('body');
}).mouseout(function(){
this.title=this.mytitle;
$('#tooltip').remove();
}); 
});
</script>