事件当前鼠标位置

make_love_make_child 2009-05-22 11:42:11
<!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=gb2312" />
<title>无标题文档</title>
<style type="text/css">
html{
}
body{
position:absolute;
}
#test{
position:absolute;
left:10px;
top:2px;
}
</style>
<script type="text/javascript">

function p_move_()
{ var e=window.event;
var start_=e.clientX||e.pageX;
var set_=200;
var opp=document.getElementById("test");
var mid=parseInt(opp.style.left);
var end_=mid-start+set;
opp.style.left=end_+'px';

}
</script>
</head>

<body>
<div id="test">
<table width="10000" border="1">
<tr>
<td> </td>
</tr>
</table>
<img id="ac" style=" position:absolute;filter:alpha(opacity=10);opacity:0.1; left:2000px; top:200px;" onclick="p_move_();" src="pupil.gif" />
</div>
</body>
</html>


其中var e=window.event;无效,谁知道怎么改?
...全文
73 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
moray126 2009-05-22
  • 打赏
  • 举报
回复
不知道你说的无效是什么意思
var e=window.event;
e == null ?
还是根本就没有执行这个语句?
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 make_love_make_child 的回复:]
<!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=gb2312" />
<title>无标题文档 </title>
<style type="text/css">
html{
}
body{
position:absolute;
}
#test{
position:absolute;
left:10px;…
[/Quote]

var opp=document.getElementById("test");
var mid=parseInt(opp.style.left);
这里有错
因为你没有opp.style.left的值
  • 打赏
  • 举报
回复
非常感谢大家
shenzhenNBA 2009-05-22
  • 打赏
  • 举报
回复
增加得到事件的JS,修改JS如下:

<script type="text/javascript">

function getEvt(evt){
var theE;
if(window.event) //MS IE
{
theE = window.event;
}
else //NOT MS IE
{
theE =event;
}
return theE;
}



function p_move_(e)
{
//var e=e||window.event;
//var start_=e.clientX||e.pageX;
var theEvt;
theEvt=getEvt(event);
start_=theEvt.clientX;

var set_=200;
var opp=document.getElementById("test");
var mid=parseInt(opp.style.left);
var end_=mid-start_+set_;
opp.style.left=end_+'px';

}
</script>
hookee 2009-05-22
  • 打赏
  • 举报
回复

<!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=gb2312" />
<title>无标题文档 </title>
<style type="text/css">
</style>
<script type="text/javascript">

function p_move_(evt)
{ var e=window.event?window.event:evt;
var start_=e.clientX||e.pageX;
var set_=200;
var opp=document.getElementById("test");
var mid=parseInt(opp.style.left);
var end_=mid - start_ + set_;
opp.style.left=end_+'px';

}
</script>
</head>

<body>
<div id="test" style="position:absolute;left:10px;top:2px;">
<table width="10000" border="1">
<tr>
<td>  </td>
</tr>
</table>
<img id="ac" style=" position:absolute;filter:alpha(opacity=10);opacity:0.1; left:2000px; top:200px;" onclick="p_move_();" src="pupil.gif" />

</div>
</body>
</html>
dudp1985 2009-05-22
  • 打赏
  • 举报
回复
这个问题以前遇到过,style.left/top有时需要用内联方式定义才能取到,也就是style='left:200px',为什么,不知道
dudp1985 2009-05-22
  • 打赏
  • 举报
回复
我错了…………能…………糗啊
dudp1985 2009-05-22
  • 打赏
  • 举报
回复
opp.style.left 应该是XXXpx吧,能parseInt()?

  • 打赏
  • 举报
回复
<!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=gb2312" />
<title>无标题文档</title>
<style type="text/css">
html{
}
body{
position:absolute;
}
#test{
position:absolute;
left:10px;
top:2px;
}
</style>
<script type="text/javascript">

function p_move_(e)
{ var e=e||window.event;
var start_=e.clientX||e.pageX;
var set_=200;
var opp=document.getElementById("test");
var mid=parseInt(opp.style.left);
var end_=mid-start_+set_;
opp.style.left=end_+'px';

}
</script>
</head>

<body>
<div id="test">
<table width="10000" border="1">
<tr>
<td> </td>
</tr>
</table>
<img id="ac" style=" position:absolute;filter:alpha(opacity=10);opacity:0.1; left:2000px; top:200px;" onclick="p_move_(event);" src="pupil.gif" />
</div>
</body>
</html>



改成这样,分析left无效是怎么回事?

87,915

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧