<!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>
    <title></title>
    <style type="text/css">
        td
        {
            border: solid 1px #185D98;
            width: 60px;
            text-align: center;
            padding: 8px;
        }
    </style>
    <%--    <script src="../js/jquery-1.4.2.min.js" type="text/javascript"></script>    <script src="../js/myjs/jquery.floatDiv.bak.js" type="text/javascript"></script>--%>
</head>
<body style="text-align: center; margin: 5px auto;">
    <form id="form1">
    <div style="margin: 5px auto; width: 100%; border: solid 1px #F7D1A5; text-align: center;">
        <table id="mytable" cellpadding="0" cellspacing="0">
        </table>
        <div style="width: 200px; height: 80px; position: absolute; background-color: #DB0C0C"
            id="mydiv">
            &nbsp;
        </div>
    </div>
    </form>
    <script type="text/javascript">
        window.onload = function() {
            var div = document.createElement("div");
            div.innerHTML = "test div";
            document.getElementsByTagName("body")[0].appendChild(div);
            div.style["top"] = "expression(10)";
        };
    </script>    <div id="floaterBottom" style="width: 780px; height: 80px; border: solid 1px #F7D1A5;
        background: yellow;">
    </div>
</body>
</html>这样在ie6下回出错的,是参数无效的错误。。请问要怎样修复
http://topic.csdn.net/u/20100930/03/b6aa48c4-f70a-44ee-bb2b-07a3920fbc4a.html?seed=179312131&r=68898402#r_68898402
顺便帮帮忙,上面那个帖子也是同一个错误

解决方案 »

  1.   

    div.style.top = "expression(this.top > 100 ? 100 : auto)";
      

  2.   

    看了你原来的帖子看来我回答错了,网上是这样描述的
    _top:expression(documentElement.scrollTop+数值+"px")那么是不是可以
    div.style.top = "expression(documentElement.scrollTop+数值+'px')";
    呢???
      

  3.   

    谢谢
    看了你原来的帖子看来我回答错了,网上是这样描述的
    _top:expression(documentElement.scrollTop+数值+"px")那么是不是可以
    div.style.top = "expression(documentElement.scrollTop+数值+'px')";
    呢???
    这样也是不行的。。
    setExpression 是?怎么用?
      

  4.   

    为什么网上非要expression呢,不能直接进行计算么?比如obj.style.marginTop = "100px";不行么,为什么要这么做呢,想请教,对expression这个东西不太明白,它不是应该在css里运用么,在js感觉应该不同它吧
      

  5.   

    这个是想在ie6里模仿position:fixed 所以要这样用,的确,我可以直接写到css里,但我这里是拿别人写好的一个jq插件,他这里是这样写的
     if (isIE6) {
                if (top >= 0) {
                    wrap = $("<div style=\"top:expression(document.documentElement.scrollTop+" + top + ");\"></div>");
                } else {//documentElement.scrollTop+documentElement.clientHeight-
                wrap = $("<div style='top:expression(document.documentElement.scrollTop+document.documentElement.clientHeight-this.offsetHeight);'></div>");
                }
            }
    他就是动态设置的,用jqery 1.3.2没问题,用1.4.2却出错。我想了n久都想不到是什么问题。
    觉得就是动态设置expression不行
      

  6.   

    ("<div style=\"top:expression(document.documentElement.scrollTop+" + top + "px);\"></div这样不行么?
      

  7.   

    既然使用js,就可以直接计算了,怎么还用expression呢?
    expression是在没有js的情况下在css里设置的。其他浏览器都不支持了,还是别用了
      

  8.   


    expression慎用啊。
    數據量大的時候,IE都會死翹翹的了。
      

  9.   

    好,谢谢大家
    <input type="button" value="点我"
     onclick="hutia.style.setExpression('left','(body.clientWidth-100)/2');"
    >
    不知道这样行不行呢
      

  10.   


       if (isIE6) {
                wrap.css("position", "absolute");
                //没有加这个的话,ie6使用表达式时就会发现跳动现象
                //至于为什么要加这个,还有为什么要加nothing.txt这个,偶也不知道,希望知道的同学可以告诉我
                $("body").css("background-attachment", "fixed").css("background-image", "url(n1othing.txt)");            if (top >= 0) {
                    wrap[0].style.setExpression('top', 'documentElement.scrollTop+' + top + '');
                } else {
                    wrap[0].style.setExpression('top', 'documentElement.scrollTop+documentElement.clientHeight-this.offsetHeight');
                }
            }这样果然可行。。几天没睡觉,终于搞店。
      

  11.   

    setExpression太好了
    纠结的ie6不支持fixed,普通设置css方法不能设置css表达式 $("body").css("background-attachment", "fixed").css("background-image", "url(n1othing.txt)");
    这句给body设置背景图片,可防止模拟的fixed抖动,也可已设置在html标签里(百度搜的)
    不设置的话ie6定位元素抖动的厉害(实测确实如此)