想要控制html元素显示的clip量.
最好是要知道html元素自身能有多么大的宽度.

接上一文章.
父nav截断了子元素的显示.
-
那么使用鼠标可以获得子元素的实际需要的宽度.
加载完毕之后,可以使用js动态控制nav的宽度.:想要100%,120%,80%的宽度.

用到javascript属性.offsetWitdh
与此类似的还有,scrollWitdh,scrollLeft,clientWidth
参考链接:HTML精准定位

获取宽度
-
获取鼠标位置.
使用onmouseover来监测.
使用到的javascript关键词:eventX,eventY,offsetX,offsetY
使用相对于容器坐标.则需要offset.

进一步 可以使用设置scrollLeft修改滚动位置.

(本文章功用测试源代码):

<!DOCTYPE html>  
<html lang="en">  
<head>  
    <meta charset="UTF-8">
    <title>javascript 获取dom宽度</title>
    <style>
        #outer{width:10em;overflow: hidden;border:1px solid #e3e3e2;background: #f2f3f4;padding:.3em 0;}
        #inner{width:16em;padding:.3em;background: #fff;}
    </style>
</head>
<body>
    <div id="outer">
        <div id="inner">ko</div>
    </div>
    <script>
        var inner=document.getElementById('inner');
        var outer=document.getElementById('outer');
        inner.innerHTML = inner.offsetWidth+" / "+outer.offsetWidth;
        outer.style.width = inner.offsetWidth*.8 + "px";
        inner.innerHTML = inner.innerHTML+" / "+outer.offsetWidth;
        inner.onmousemove=function(){
            inner.innerHTML=event.offsetX+"/"+event.clientX;
        }
    </script>
</body>
</html>

Songlairui
159 声望2 粉丝

其过大小,有数百事。吾欲长生,铮铮不避。称心如意夶〰