select options标签IE6兼容解决方案

来源:互联网 发布:pp助手 mac打不开 编辑:程序博客网 时间:2024/05/18 10:34
    <script type="text/javascript">
        Fix = {"FixWidth":function FixWidth(selectObj) {
            var newSelectObj = document.createElement("select");
            newSelectObj = selectObj.cloneNode(true);
            newSelectObj.selectedIndex = selectObj.selectedIndex;
            newSelectObj.onmouseover = null;


            var e = selectObj;
            var absTop = e.offsetTop;
            var absLeft = e.offsetLeft;
            while (e = e.offsetParent) {
                absTop += e.offsetTop;
                absLeft += e.offsetLeft;
            }
            with (newSelectObj.style) {
                position = "absolute";
                top = absTop + "px";
                left = absLeft + "px";
                width = "auto";
            }
            var rollback = function () { Fix.RollbackWidth(selectObj, newSelectObj); };
            if (window.addEventListener) {
                newSelectObj.addEventListener("blur", rollback, false);
                newSelectObj.addEventListener("change", rollback, false);
            }
            else {
                newSelectObj.attachEvent("onblur", rollback);
                newSelectObj.attachEvent("onchange", rollback);
            }


            selectObj.style.visibility = "hidden";
            document.body.appendChild(newSelectObj);
            newSelectObj.focus();
        },


        "RollbackWidth":function RollbackWidth(selectObj, newSelectObj) {
            selectObj.selectedIndex = newSelectObj.selectedIndex;
            selectObj.style.visibility = "visible";
            document.body.removeChild(newSelectObj);
        }
    }
</script>
原创粉丝点击