ajax异步调用,当鼠标点在图片上时,显示一个新层读取数据内容

来源:互联网 发布:java内存溢出的原因 编辑:程序博客网 时间:2024/04/30 08:24

兑现诺言第一天---ajax异步调用,当鼠标点在图片上时,显示一个新层读取数据内容

  定义一个xmlhttp对象,因为要支持多种浏览器,因此定义的时候要根据浏览器的
类型来判断该如何实例话,
<html>
<head>
<script type=text/javascript">
var xmlhttp;//定义一个变量
function createHTTP()
{
if(window.ActiveXObject)//IE浏览器
{
  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
else if(window.XMLHttpRequest)//Netcapse浏览器
{
  xmlhttp=new XMLHttpRequest();
}
}
function getData(gg)
{
createHTTP();//实例话xmlhttp
xmlhttp.Open("GET","gyy.aspx?id="+gg,true);//加载服务器,也就是重gyy.aspx网站里取到要的数据
xmlhttp.onreadystatechange=stateChange;//异步对象事件挂钩
xmlhttp.Send(null);//发送请求
}
//异步调用的事件
function stateChange()
{
if(xmlhttp.readystate==4)
{
if(xmlhttp.status==200 || xmlhttp.status==0)
{
var data=xmlhttp.ResponseText;
document.getElementById("div1").innerHTML=data;
}
}
}
functiononMouserOver(gg)
{
var event =(typeof event!='undefined'?event:window.event); // 事件    
var target=(typeof event.target!='undefined'?event.target:event.srcElement);
var x,y;
if(typeof event.pageX!='undefined')
{
  x=event.pageX;
  y=event.pageY;
}
else
{
  x=event.clientX+(document.documentElement.scrollLeft ? document.documentElement.scrollLeft :document.body.scrollLeft);
  y=event.clientY+(document.documentElement.scrollTop ?document.documentElement.scrollTop : document.body.scrollTop);
}
var div=document.getElementById ("div1");
div.style.visibility='visible';
div.style.posLeft=x;
div.style.posTop=y;
getData(gg);
}
functiononMouserOut()
{
document.getElementById("div1").style.visibility='hidden';
}
</script>
</head>
<body>
<asp:DataList ID="dlPic" runat="server" RepeatColumns="4" RepeatDirection="horizontal">
            <ItemTemplate>
                <img src='<%# Eval("name","../images/{0}") %>' alt="" width="35px" height="25px"
                   onmouseover="over('<%#Eval("name") %>')"onmouseout="out()" />
                <br />
                <%# Eval("name") %>
            </ItemTemplate>
</asp:DataList>
<div id="div1" style="position: absolute; background-color: Silver; left: 192px;
width: 181px; top: 104px; height: 108px; visibility: hidden;">
</div>
</body>
</html>
  接下来就只要定义一个gyy.aspx 页,在里面通过request.Query("id")读取ID值,传到然后后台通过这个主健从数据库中读取内容,然后用response.write输出,就可以在层中显示图片对应的详细内容.
原创粉丝点击