为了账号安全,请及时绑定邮箱和手机立即绑定

getLeft和getTop函数哪里出问题了


getLeft和getTop函数哪里出问题了,浏览器报错offsetLeft没有定义

<!-- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> -->

<head>

<meta http-equiv="Content-Type" content="text/html;charset=UTF-8">

<title>Document</title>

<style type="text/css">

    body{

     background: #333;

    }

    .bg_div{

     background-image: url("river.jpg");

     height: 690px;

     width: 1268px;

     margin: 0 auto;

     position: relative;


    }

    .logo{

     background-image: url("logo.png");

     height:53px;

     width:107px;

     float: left;

    

     margin: -5px 18px 0 0;

    }

    .search-form{

     float: left;

     background: #fff;

     padding: 5px;

       /* width: 388px;*/

    }

    .search-text{

     border: 0;

     float: left;

     height: 25px;line-height: 25px;

     outline: none;//

     width: 350px;

    }

    .search-submit{

     border: 0;

     background-image: url(search-button.png);

     height: 29px;

     width:29px;

     float: left;


    }

    .box{

     position: absolute;

     top: 200px;

     left: 400px;

    }

    .suggest{

        width: 388px;

        background: #fff;

        border: 1px solid #999;

    }

    .suggest ul{

        list-style: none;

        margin: 0;

        padding: 0;

    }

    .suggest ul li{

        padding: 5px;

      font-size: 12px;

      line-height: 25px;

      cursor: pointer;

    }

    .suggest ul li:hover{

        background: #ccc;

        text-decoration: underline;

    }

</style>

</head>

<body>

<div>

<div>

<div></div>

<form action="https://cn.bing.con/search" target="_blank" id="search-form" >

<input type="text" name="q" id="search-input" autocomplete="off">

<input type="submit" value="">

</form>

</div>

</div>

<div id="search-suggest" style="display:none">

<ul id="search-result">

<li>搜索结果1</li>

<li>搜索结果2</li>

</ul>

</div>

<script type="text/javascript">

function getDom(id){

return document.getElementById(id);

}

function addEvent(id,event,fn){

var ele = getDom(id)||document;

if(ele.addEventListener){

ele.addEventListener(event,fn,false);

}else if(ele.attachEvent){

ele.attachEvent('on'+event,fn);

}

}

    function getLeft(ele){

        var actualLeft = ele.offsetLeft;

        var current = ele.offsetParent;

        while(current!=null){

         actualLeft +=current.offsetLeft;

         current = current.offsetParent;

        }

        return actualLeft;

    }

    function getTop(ele){

       

        var actualLeft = ele.offsetTop;

        var current = ele.offsetParent;

        while(current!=null){

         actualTop +=current.offsetTop;

         current = current.offsetParent;

        }

        return actualTop;

    }

    addEvent('search-input','keyup',function(){

     getDom('search-suggest').style.left = getLeft(getDom('search-form'));

     getDom('search-suggest').style.top = getTop(getDom('search-form'))+38+'px';

     getDom('search-suggest').style.position = 'absolute';

     getDom('search-suggest').style.display = 'block';

    })

</script>

</body>

</html>


正在回答

3 回答

谢谢你啊,自己检查不仔细

0 回复 有任何疑惑可以回复我~

http://img1.sycdn.imooc.com//58ec5c53000133f302830182.jpg这是你的getLeft(ele)函数

http://img1.sycdn.imooc.com//58ec5c7c00016b0a02450200.jpg注意这里你自己定义的变量名。然后再看看你的返回值。

0 回复 有任何疑惑可以回复我~

没人回答吗

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
搜索框制作
  • 参与学习       66003    人
  • 解答问题       463    个

本课程从简入深讲解搜索框的制作,学习JQ与JS实现Ajax技术的不同点

进入课程

getLeft和getTop函数哪里出问题了

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号