javascript - 如何将div附加到jquery中的特定div?
问题描述
我正在尝试动态淡入具有特定高度和宽度的 div 以及与具有类的特定 div 相同的 Id,并使用该函数myBox
随机定位它们。然而 div 被追加 inside 和 outside 。myBox
append()
myBox
这是我的代码。怎么了?
var xx = Math.random() * 100;
for (var i = 0; i < xx; i++) {
var $newdiv1 = $("<div id='object1' style='width: 100px; height: 100px; background: red ;'></div>");
var top = Math.random() * 700 - 30;
var left = Math.random() * 1200;
$($newdiv1).css({
"top": top,
"left": left
});
$($newdiv1).css('background-color', getRandomColor);
$(".myBox").append($newdiv1).fadeIn("slow");
}
解决方案
通过查看您的问题,我认为 Rory 的评论为您提供了答案,但我只是加强了它。需要在主 div 上设置overflow: hidden
css 属性以停止在主 div 之外显示子对象。
请在此处查看片段或小提琴。只是添加了背景颜色和不透明度以获得更好的演示效果。
$(function(){
var xx = Math.random() * 100;
for (var i = 0; i < xx; i++) {
var $newdiv1 = $("<div id='object1' style='width: 100px; height: 100px; background: red ;'></div>");
var top = Math.random() * 700 - 30;
var left = Math.random() * 1200;
$($newdiv1).css({
"top": top,
"left": left
});
$($newdiv1).css('background-color', '#C00'); //getRandomColor);
$(".myBox").append($newdiv1).fadeIn("slow");
}
});
.myBox {
width: 500px;
height: 300px;
position: relative;
background-color: orange;
overflow: hidden;
}
.myBox div {
position: absolute;
opacity: 0.5;
border: 1px solid green;
}
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="myBox"></div>
希望这会帮助你。
推荐阅读
- php - 如何使用 Codeigniter 使用动态子域 - CPanel 通配符子域
- python - 从python Dict中删除项目给我错误
- javascript - React Native SectionList 在刷新时滚动到顶部
- php - 将一页重定向到 http 而不是 https
- c++ - vtkResliceImageViewer 图像质量问题
- php - 为什么我会收到缺少链接或未设置错误
- php - Laravel 在不同的条件下获得相同的查询
- python - 使用 Python Flask 应用程序“运行时错误:在应用程序上下文之外工作”(使用调度程序发送 gmail)
- octave - 在倍频程中,错误:对于 x^A,A 必须是方阵。使用 .^ 表示元素幂
- android - How to change VectorDrawable viewportHeight and viewportWidth and what is the best practice on working with vector?