问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

求随机显示若干个div的js代码

发布网友 发布时间:2022-04-07 06:00

我来回答

3个回答

懂视网 时间:2022-04-07 10:21

描述:

鼠标点击页面,在哪里点击就在那个位置创建一个div,宽高50,颜色随机,div在鼠标点击的正中间。

效果如下图所示:

dec4d17fbef21e6b14bc3fb27a65784.png

js代码:

var Method=(function () {
 return {
 EVENT_ID:"event_id",
 loadImage:function (arr) {
 var img=new Image();
 img.arr=arr;
 img.list=[];
 img.num=0;
// 如果DOM对象下的事件侦听没有被删除掉,将会常驻堆中
// 一旦触发了这个事件需要的条件,就会继续执行事件函数
 img.addEventListener("load",this.loadHandler);
 img.self=this;
 img.src=arr[img.num];
 },
 loadHandler:function (e) {
 this.list.push(this.cloneNode(false));
 this.num++;
 if(this.num>this.arr.length-1){
 this.removeEventListener("load",this.self.loadHandler);
 var evt=new Event(Method.EVENT_ID);
 evt.list=this.list;
 document.dispatchEvent(evt);
 return;
 }
 this.src=this.arr[this.num];
 },
 $c:function (type,parent,style) {
 var elem=document.createElement(type);
 if(parent) parent.appendChild(elem);
 for(var key in style){
 elem.style[key]=style[key];
 }
 return elem;
 },
 divColor: function () {
 var col="#";//这个字符串第一位为# 颜色的格式
 for(var i=0;i<6;i++){
 col+=parseInt(Math.random()*16).toString(16);//rondom*16后的随机值即为0-1*16==0-16; toString(16)为转化为16进制
 }
 return col;//最后返回一个七位的值 格式即为#nnnnnn 颜色的格式
 },
 random:function (min,max) {
 max=Math.max(min,max);
 min=Math.min(min,max);
 return Math.floor(Math.random()*(max-min)+min);
 },
 dragElem:function (elem) {
 elem.addEventListener("mousedown",this.mouseDragHandler);
 elem.self=this;
 },
 removeDrag:function (elem) {
 elem.removeEventListener("mousedown",this.mouseDragHandler);
 },
 mouseDragHandler:function (e) {
 if(e.type==="mousedown"){
 e.stopPropagation();
 e.preventDefault();
 document.point={x:e.offsetX,y:e.offsetY};
 document.elem=this;
 this.addEventListener("mouseup",this.self.mouseDragHandler);
 document.addEventListener("mousemove",this.self.mouseDragHandler);
 }else if(e.type==="mousemove"){
 this.elem.style.left=e.x-this.point.x+"px";
 this.elem.style.top=e.y-this.point.y+"px";
 }else if(e.type==="mouseup"){
 this.removeEventListener("mouseup",this.self.mouseDragHandler);
 document.removeEventListener("mousemove",this.self.mouseDragHandler);
 }
 }
 }
})();

html代码:

<!DOCTYPE html>
<html>
<head>
 <meta charset="UTF-8">
 <title>Title</title>
</head>
<script src="js/Method.js"></script>
<body>
 <script>
 init();
 function init() {
 document.addEventListener("mousedown",mouseHandler);
 }
 
 function mouseHandler(e) {
 var randomDiv=Method.$c("div",document.body,{
 width: "50px",
 height: "50px",
 position: "absolute",
 backgroundColor:divColor()
 })
 randomDiv.style.left=e.clientX-randomDiv.offsetWidth/2+"px";
 randomDiv.style.top=e.clientY-randomDiv.offsetHeight/2+"px";
/* top:e.clientY-this.offsetHeight/2+"px",//原因 设置为了X...xbl
// removeEventListener(randomDiv);*/
 }
 
 function divColor() {
 var col="#";//这个字符串第一位为# 颜色的格式
 for(var i=0;i<6;i++){
 col+=parseInt(Math.random()*16).toString(16);//rondom*16后的随机值即为0-1*16==0-16; toString(16)为转化为16进制
 }
 return col;//最后返回一个七位的值 格式即为#nnnnnn 颜色的格式
 }
 </script>
</body>
</html>

相关教程推荐:js教程

热心网友 时间:2022-04-07 07:29

在九个里面选四个其实有更好的办法,就是在剩下的5个里去掉一个,但我怕你再住上加,索性不这么做了.
<div id="show1">位置随便放</div>
<div id="show2">位置随便放</div>
<div id="show3">位置随便放</div>
<div id="show4">位置随便放</div>
<div id="movie1">1</div>
<div id="movie2">2</div>
<div id="movie3">3</div>
<div id="movie4">4</div>
<div id="movie5">5</div>
<div id="movie6">6</div>
<div id="movie7">7</div>
<div id="movie8">8</div>
<div id="movie9">9</div>
<input type="button" onclick="javascript:divrefresh();" value="换一批" />

<script type="text/javascript">
var l=9,s=4,show=',',list=',';
for(var i=1;i<=l;i++){
list+=(i+",");
document.getElementById('movie'+i).style.display='none';
}
function divrefresh(){
var i,a=show.split(','),c=list,d,e;
for(i=1;i<=s&&i<a.length;i++) c=c.replace(','+a[i]+',',',');
show=',';
for(i=1;i<=s;i++){
d=c.split(',');
e=d[(parseInt(Math.random()*1000)%(d.length-2))+1];
show+=(e+',');
c=c.replace(','+e+',',',');
document.getElementById('show'+i).innerHTML=document.getElementById('movie'+e).innerHTML;
}
}
divrefresh();
</script>
好吧,你这道连环题如果再升级你可以自己发挥了,l和s这两个参数随便改吧,只要你的元素序列与这两个值相符就行了

热心网友 时间:2022-04-07 08:47

<html>
<head>
<meta http-equiv=content-type content="text/html;charset=GBK">
<style>
div{
height: 20px;
margin-top: 20px;
font-size: 20pt;
text-align:center;
visibility: hidden;
}
</style>
</head>
<body>
<div style="background-color=#22DD99;" id="div1">1</div>
<div style="background-color=#AA8899;" id="div2">2</div>
<div style="background-color=#CC8899;" id="div3">3</div>
<div style="background-color=#EE8899;" id="div4">4</div>
<div style="background-color=#FFFF99;" id="div5">5</div>
<div style="background-color=#AAAA99;" id="div6">6</div>
<div style="background-color=#77AAAA;" id="div7">7</div>
<div style="background-color=#77FFFF;" id="div8">8</div>
<div style="background-color=#77F8CC;" id="div9">9</div>
</body>
<script>
window.onload = function(){
var ran = parseInt(Math.random() * 10);

for(var i = 1; i <= ran; i++){
document.getElementById("div" + i).style.visibility = "visible";
}
}
</script>
</html>
看看是不是这个意思
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
这种情况需要准备什么样的证据才能保证维权成功,关于个人知识产权方面... 侵犯著作权罪成立的条件是什么 网站被抄袭,怎么办?官网网页内容抄袭引发的法律问题 版权申请哪家性价比高? 著作权侵权损害如何赔偿 瓷砖划痕怎么处理方法 地板砖划痕怎么去除十种方法 关于梦幻西游转区的一些问题。懂的进。 茶叶泡水发苦的原因茶叶泡水发苦是什么原因 ...那又怎么样?从化学角度讲不也是那种分子起的作 女人梦见自己变蝴蝶飞被男人差点抓到,好害怕啊 梦见被所有人误会,变成蝴蝶飞走啦,这预示着什么? 梦见自己变成蝴蝶飞着被人追杀 梦见自己变蝴蝶飞出笼子 昨天晚上做梦,梦见自己变成蝴蝶了,怎么回事? 关于笔的说明文六百字 说明文:一种学习用品 关于笔的说明文500字,要求:种类,作用 关于笔的说明文 600字 中等水平 关于笔的生动说明文100 黑水笔的自述 作文 说明文 上海理工大学中英国际学院的ctob项目是什么? 写一个关于笔的说明文 在上海理工大学读研性价比高吗? 求一篇关于笔的说明文600字左右 笔的说明文 上海理工大学留学海外的项目有吗 关于笔的说明文,500字左右 说明文{500字以上}快一点啊 一篇关于文具的说明文600字 阴阳师活动召唤次数有什么用吗 阴阳师召唤了几次怎么看? 阴阳师体力多久恢复一点 阴阳师体力回满时间要求 word操作...&quot;每行行距设为1.5倍,段前段后5磅&quot; 段前段后5磅在哪里设置? word操作...&quot;每行行距设为1.5倍,段前段后5磅&quot;怎么设置?在线等 在word2003编辑文档中,写出设置文章标题提升5磅高度的主要步骤 word中设置段前段后5磅后 段后显示有间隔 但段前没显示(见图) 是怎么回事啊? 月圆之夜手游职业哪个厉害 最强职业推荐攻略 月圆之夜手游最强职业选择 哪个角色厉害 支架式红外测温仪怎么调没有按扭- 问一问 vivoy50摄像头按键和哪一款手机相似 月圆之夜如何打女巫 月圆之夜女巫打法攻略 月圆之夜手游神父boss打法技巧 修女怎么打 月圆之夜各职业打法流 word中删除了部分数字序号,剩下的数字序号如何依次改正 月圆之夜哪个职业好/月圆之夜走向下个路口/月圆之 月圆之夜新手怎么操作 月圆之夜新手玩法技巧分析 Y3s和y9s哪款好 前面已经删了几个Word脚注,后面再插入脚注编号就由43直接到47,而非接着的44,如何让序号连续? 月圆之夜附加模式有什么区别