javascript-如何基于父元素设置具有固定位置的div百分比宽度
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了javascript-如何基于父元素设置具有固定位置的div百分比宽度,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1409字,纯文字阅读大概需要3分钟。
内容图文
![javascript-如何基于父元素设置具有固定位置的div百分比宽度](/upload/InfoBanner/zyjiaocheng/659/6acbdf01e8fc4b859d11d6f094ed36a5.jpg)
我正在使用Wordpress,滚动页面时需要在顶部固定一个div.出于响应原因,div(.details)必须具有百分比宽度.我发现了一个JavaScript,可在距顶部40px时停止div(.details),并将其从相对位置切换到固定位置.当处于相对位置时,它的宽度为25%,但是当它固定后,现在25%的宽度是基于窗口的,而不是基于父元素(.entry),它小于窗口,因此当我滚动时,它会变大.这些是CSS和Javascript(.carousel是.entry中的另一个div,位于.details的左侧):
<style>
.entry { position:relative; width:100%; }
.carousel { width:70%; height: auto; position: relative; float: left; margin-top: 0px;}
.details { width: 25px; height: 100%; float: right; margin-top: 0px; line-height: 20px;}
</style>
<script>
$(window).scroll(function(){
if ($(window).scrollTop() >= 90){
$('.details').css({position:'fixed',right:40,top:40,width:'25%'});
} else {
$('.details').css({position:'relative',right:0,top:0,width:'25%'});
}
});
</script>
我需要基于.entry而不是基于窗口使.details div的宽度.
任何人都能发现错误或需要其他东西吗?我不是Java专业人士.
谢谢你们!
解决方法:
唯一的方法是通过JavaScript设置.details宽度.尝试这个:
$(window).scroll(function(){
if($(window).scrollTop() >= 90){
$('.details').css({position:'fixed',right:40,top:40});
} else {
$('.details').css({position:'relative',right:0,top:0});
}
});
// set the width of the details div when window resizes
window.addEventListener('resize', function(){
var $el = $('.details')
$el.width( $el.parent().outerWidth() * .25 )
})
这是一个crude example
内容总结
以上是互联网集市为您收集整理的javascript-如何基于父元素设置具有固定位置的div百分比宽度全部内容,希望文章能够帮你解决javascript-如何基于父元素设置具有固定位置的div百分比宽度所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。