一个js文件:
// JScript 文件
var isFlex;
var height_min;
var height_max;function menu_Load(obj)
{
    var parent = obj.parentNode;
    height_min = 18; 
    height_max = parseInt(parent.style.height);
}function getFocus(obj)
{
    isFlex = true;
}function flex(obj)
{
    if(isFlex == true)
    {
        var parent = obj.parentNode;
        if(parseInt(parent.style.height) == height_min)
            parent.style.height = height_max + "px";
        if(parseInt(parent.style.height) == height_max)
            parent.style.height = height_min + "px";
    }
    isFlex = false;
    //alert("sdahksd");
    parent.style.height = height_max + "px";
}
html主要代码:<div id="div_menu" style="height:200px;width:150px;background-color:Yellow;">
        <div style="cursor:pointer;" onload="menu_Load(this)" onmousedown="getFocus(this)" onmouseup="flex(this)">我的好友</div>
        <div>&nbsp;&nbsp;&nbsp;好友1</div>
        <div>&nbsp;&nbsp;&nbsp;好友2</div>
        <div>&nbsp;&nbsp;&nbsp;好友3</div>
        <div>&nbsp;&nbsp;&nbsp;好友4</div>
        <div>&nbsp;&nbsp;&nbsp;好友5</div>
    </div>

解决方案 »

  1.   


    // JScript 文件
    var isFlex;
    var height_min;
    var height_max;function menu_Load(obj)
    {
        var parent = obj.parentNode;
        height_min = 18; 
        height_max = parseInt(parent.style.height);
    }function getFocus(obj)
    {
        isFlex = true;
    }function flex(obj)
    {
        if(isFlex == true)
        {
            var parent = obj.parentNode;
            if(parseInt(parent.style.height) == height_min)
                parent.style.height = height_max + "px";
            if(parseInt(parent.style.height) == height_max)
                parent.style.height = height_min + "px";
        }
        isFlex = false;
        //alert("sdahksd");
        parent.style.height = height_max + "px";    //调试的时候,这里跳出来,说参数无效  “height_max undefined”
    }
      

  2.   

    应该是div 的onload没执行, height_max的值是undefined你把menu_Load 放到 window.onload 里执行..
      

  3.   

    <div id="div_menu" style="height:200px;width:150px;background-color:Yellow;">
            <div id="div0" style="cursor:pointer;" onmousedown="getFocus(this)" onmouseup="flex(this)">我的好友</div>
            <div>&nbsp;&nbsp;&nbsp;好友1</div>
            <div>&nbsp;&nbsp;&nbsp;好友2</div>
            <div>&nbsp;&nbsp;&nbsp;好友3</div>
            <div>&nbsp;&nbsp;&nbsp;好友4</div>
            <div>&nbsp;&nbsp;&nbsp;好友5</div>
        </div>
    <script>
    menu_Load(document.getElementById("div0"));
    </script>
      

  4.   

    刚学js,实在太菜!请问前辈,这个window.onload写在哪里?
      

  5.   

    就放到你脚本的最下面window.onload = function(){
        menu_Load(document.getElementById("div1"));
    };要给div加个id
    <div id="div1" style="cursor:pointer;" onmouse.......>
      

  6.   

    还是不行!4楼网友的可以,放在body里面!不过这样的话,不利于抽象出来单独成为一个库类。有没有什么好点儿的方法,最好可以还是放在事件里的!
      

  7.   

    不知道你是不是要这样的效果?
    <html>
    <body>
    <script>
    // JScript 文件
    var isFlex;
    var height_min;
    var height_max;function menu_Load(obj)
    {
        var par = obj.parentNode;
        height_min = 18; 
        height_max = parseInt(par.style.height);
    }function getFocus(obj)
    {
        isFlex = true;
    }function flex(obj)
    {
    var par = obj.parentNode;
        if(isFlex == true)
        {
            if(parseInt(par.style.height) == height_min){
                par.style.height = height_max + "px";
    }else if(parseInt(par.style.height) == height_max){
                par.style.height = height_min + "px";
    }
        }
        isFlex = false;
        //alert("sdahksd");
    //par.style.height = height_max + "px";
    }
    window.onload = function(){
    menu_Load(document.getElementById("div1"));
    };
    </script>
    <div id="div_menu" style="height:200px;width:150px;background-color:Yellow; overflow:hidden;">
            <div id="div1" style="cursor:pointer;" onMouseDown="getFocus(this)" onMouseUp="flex(this)">我的好友</div>
            <div>&nbsp;&nbsp;&nbsp;好友1</div>
            <div>&nbsp;&nbsp;&nbsp;好友2</div>
            <div>&nbsp;&nbsp;&nbsp;好友3</div>
            <div>&nbsp;&nbsp;&nbsp;好友4</div>
            <div>&nbsp;&nbsp;&nbsp;好友5</div>
        </div>
    </body>
    </html>
      

  8.   

    你的onload="menu_Load(this)"在画面初期化后并没有执行,
    所以height_max值为undefined,
    结果就是在执行 parent.style.height = height_max + "px"; 时出错
      

  9.   

    你的onload="menu_Load(this)"在画面初期化后并没有执行,
    所以height_max值为undefined,
    结果就是在执行 parent.style.height = height_max + "px"; 时出错
      

  10.   

    在body中加一个
    <body onload="menu_Load(document.getElementById('list'))"><div id="list" style="cursor:pointer;" onmousedown="getFocus(this)" onmouseup="flex(this)">我的好友</div>
      

  11.   

    错误1:div貌似没有onload属性。
    错误2:var parent = obj.parentNode;应该放在if之外,因为if后面又引用了parent。
    <script>
    var isFlex;
    var height_min;
    var height_max;function menu_Load()
    {
        var obj = document.getElementById("div1");
        var parent = obj.parentNode;
        height_min = 18; 
        height_max = parseInt(parent.style.height);
    }function getFocus(obj)
    {
        isFlex = true;
    }function flex(obj)
    {
    var parent = obj.parentNode;
    if(isFlex == true)
        {
            
            if(parseInt(parent.style.height) == height_min)
                parent.style.height = height_max + "px";
            if(parseInt(parent.style.height) == height_max)
                parent.style.height = height_min + "px";
        }
        isFlex = false;
        //alert("sdahksd");
        parent.style.height = height_max + "px";
    }
    window.onload=menu_Load
    </script>
    <div id="div_menu" style="height:200px;width:150px;background-color:Yellow;">
            <div id="div1" style="cursor:pointer;" onload="menu_Load(this)" onmousedown="getFocus(this)" onmouseup="flex(this)">我的好友</div>
            <div>&nbsp;&nbsp;&nbsp;好友1</div>
            <div>&nbsp;&nbsp;&nbsp;好友2</div>
            <div>&nbsp;&nbsp;&nbsp;好友3</div>
            <div>&nbsp;&nbsp;&nbsp;好友4</div>
            <div>&nbsp;&nbsp;&nbsp;好友5</div>
    </div>
      

  12.   

    onload 可以写在  <body onload="方法名">也可以写在js里面 如果楼主要达到你的效果代码要改下 你onload 一个方法后要用 document.getElementById("你需要的div的id")这样的话对象就取出来了
    然后再调用你要用的方法吧