A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

  <script type="text/javascript">
    var datas= {"image/00-03smail.JPG":["image/00-03.jpg","swelte","24"],"image/00-51smail.JPG":["image/00-51.jpg","yinger","21"],"01-01smail.JPG":["image/01-01.jpg","henkes","23"]};
    function TrendsCreate()
    {
       //var div = document .createElement ("div");
       for(var smailimg in datas )
       {
           var smailImg = document.createElement ("img");
           smailImg.src = smailimg ;
           
           smailImg .setAttribute ("imgaddress",datas[smailimg][0]);
           smailImg .setAttribute ("Height",datas[smailimg][1]);
           smailImg .setAttribute ("Name",datas[smailimg][2]);
           smailImg .onmouseover= function (){
           document.getElementById ("detailimg").src = this .getAttribute ("imgadress");
           document.getElementById ("detailHeight").innerHTML =this .getAttribute ("Height");
           document.getElementById ("detailName").innerHTML = this.getAttribute ("Name");
            var div1 =document .getElementById ("detail");
            div1.style.top = window.event.clientY;
            div1.style.left = window.event.clientX;
            div1.style.display ="";
           };
           
           smailImg .onmouseout = function (){
           var div1 =document .getElementById ("detailimg");
           div1.style.display ="none";
           };
           document .body .appendChild (smailImg );
           //div1.appendChild (smailImg );
           
       }
       // document.body.appendChild (smailImg );
    }
    </script>
</head>
<body  onload="TrendsCreate()">
<div id="detail" style ="position:absolute ;display:none ; border-style:inherit;">
<img src="" id ="detailimg"/>
<p id="detailHeight"></p>
<p id="detailName"></p>
</div>
</body>
</html>

评分

参与人数 1技术分 +1 收起 理由
陈涛 + 1

查看全部评分

1 个回复

正序浏览
付炯 黑马帝 2011-11-15 17:25:49
沙发
目前至少发现这样几处错误
1、smailImg.setAttribute ("Height",datas[smailimg][1]); smailImg.setAttribute ("Name",datas[smailimg][2]);
根据上面给出的数组 [1]对应的是数组中名称的字符串 [2]对应的是年龄的值 这样赋值的时候把名称赋给了Height字段 而把年龄值赋给了Name字段
2、document.getElementById ("detailimg").src = this .getAttribute ("imgadress");
根据你声明的字段 名称应该是imgaddress 上下不一致
我认为如果不解决图片的加载问题 鼠标到达不了图片所在的位置 就不能触发onmouseover事件 说明文字也就显示不出来了

评分

参与人数 1技术分 +2 收起 理由
陈涛 + 2

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马