javascript模仿百万格子小的一小段代码

关键是得出每个图片的坐标位置,这只是一个简单的实现,更百万格子的功能还相差甚远。

Untitled Document

*{margin:0px;padding:0px}
table#tab{
border:solid #ccc;
border-width:1px 0px 0px 1px;
}
table#tab tr td{
border:solid #ccc;
border-width:0px 1px 1px 0px;
}

function fnMakeTb(){ //生成表格100行50列,实际宽度为20(边框1+宽19)
var sTabStr="

";
for(var i=0;i";
for(var j=0;j

";

}
tempStr+="

"
sTabStr+=tempStr;

}
document.getElementById("aa").innerHTML=sTabStr; //输出表格

}

var iCurX=0; //当前可用x坐标
var iCurY=0; //当前可用y坐标
var iMaxY=0; //当前最大y值
function fnLocatePic(url){
var obj=document.createElement("IMG");
obj.src=url;
//获取图片的宽高
var w=obj.width;
var h=obj.height;
//计算占用格子的宽高,必须是20的倍数
var divW=(w%20>1?(Math.floor(w/20)*20+20):w);
var divH=(h%20>1?(Math.floor(h/20)*20+20):h);

var x,y; //当前元素(图片)的坐标
if(iCurX+divW>1000){ //当前行的格子使用完,换行显示,x重新从0开始计,更新当前y值为最大y值
x=0;
y=iCurY=iMaxY;

}else{
x=iCurX;
y=iCurY;

}
iCurX=x+divW; //计算下一个元素(图片)x坐标
if(y+divH>iMaxY){
iMaxY=y+divH; //将当前最大y值赋予iMaxY

}
document.write("

");

}

fnMakeTb(50,50,1);
fnLocatePic("http://gg.blueidea.com/2006/chinaok/208x32.gif");
fnLocatePic("http://bbs.blueidea.com/images/blue/newtopic.gif");
fnLocatePic("http://bbs.blueidea.com/images/blue/smilies/biggrin.gif");
fnLocatePic("http://bbs.blueidea.com/images/blue/reply.gif");
fnLocatePic("http://bbs.blueidea.com/images/blue/discuz_icon.gif");
fnLocatePic("http://bbs.blueidea.com/images/blue/logo.gif");
fnLocatePic("http://gg.blueidea.com/logo/netfriends/logo.gif");
fnLocatePic("http://gg.blueidea.com/logo/computerarts/logo.gif");
fnLocatePic("http://pages.blueidea.com/articleimg/2007/01/1403/preview_s01.jpg");
fnLocatePic("http://gg.blueidea.com/2006/qihoo/blueidea.gif");
fnLocatePic("http://gg.blueidea.com/2006/chinaok/468x60.gif");
fnLocatePic("http://pages.blueidea.com/articleimg/2006/12/1399/preview_s01.jpg");
fnLocatePic("http://gg.blueidea.com/desk/2006/002.jpg");
fnLocatePic("http://www.blueidea.com/articleimg/2006/09/4088/00.gif");
fnLocatePic("http://gg.blueidea.com/logo/netfriends/logo.gif");
fnLocatePic("http://gg.blueidea.com/logo/computerarts/logo.gif");
fnLocatePic("http://bbs.blueidea.com/customavatars/hutia.gif");
fnLocatePic("http://bbs.blueidea.com/images/blue/smilies/frown.gif");
fnLocatePic("http://bbs.blueidea.com/images/blue/smilies/cool.gif");
fnLocatePic("http://bbs.blueidea.com/images/blue/alipay_icon.gif");
fnLocatePic("http://www.blueidea.com/gg/blueidea/2004/painter.jpg");
fnLocatePic("http://www.blueidea.com/articleimg/2003/07/425/2003.gif");

[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]

(0)

相关推荐

  • javascript模仿百万格子小的一小段代码

    关键是得出每个图片的坐标位置,这只是一个简单的实现,更百万格子的功能还相差甚远. Untitled Document *{margin:0px;padding:0px} table#tab{ border:solid #ccc; border-width:1px 0px 0px 1px; } table#tab tr td{ border:solid #ccc; border-width:0px 1px 1px 0px; } function fnMakeTb(){ //生成表格100行50列,

  • JavaScript 模仿vbs中的 DateAdd() 函数的代码

    项目中需要用到日历,.net的日历控件又太重,只好用js写一个,日历的核心函数是 DateAdd(),编写过程中发现 js 里面操作时间比想象中的繁琐,不像vbscript中的可以轻松地dateadd,后来才想到用 setFullYear().setDate()等内置函数,可以拼合一个js版的 dateadd() 来,代码如下: 复制代码 代码如下: function DateAdd(interval,number,date){ // date 可以是时间对象也可以是字符串,如果是后者,形式必须

  • Javascript实现贪吃蛇小游戏(含详细注释)

    本文实例为大家分享了Javascript实现贪吃蛇小游戏的具体代码,供大家参考,具体内容如下 前言 原生JavaScript实现贪吃蛇小游戏 GitHub地址 直接复制可用 index.html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="w

  • JavaScript实现随机点名小程序

    本文实例为大家分享了JavaScript实现随机点名小程序的具体代码,供大家参考,具体内容如下 导入jar包 将jquery-3.3.1.min.js包导入到web目录下的js包 代码实现 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>点名器</title> <style> body{ ba

  • JavaScript实现班级抽签小程序

    本文实例为大家分享了JavaScript实现班级抽签小程序的具体代码,供大家参考,具体内容如下 项目展示 项目中假设一个班只有三十个人 html结构 <div class="outerContainer"> <div class="question">请问你要抽几个xx班的小宝贝呢?</div> <div class="number"> <input type="text"

  • JavaScript实现简单购物小表格

    本文实例为大家分享了JavaScript实现简单购物小表格的具体代码,供大家参考,具体内容如下 html代码: <table border="" cellspacing="0" cellpadding="1"> <tr style="background-color: #0099cc;"> <td><input type="checkbox"class="

  • JavaScript实现网页五子棋小游戏

    本文实例为大家分享了JavaScript实现网页五子棋小游戏的具体代码,供大家参考,具体内容如下 设计思路如下: 1.先采用的Math.random()方法决定哪一方先行; 2.设置变量WFLAG = 1,BFLAG = 0时执白子,WFLAG = 0,BFLAG = 1时执黑子; 3.设置标志[I]中,当为白子时标志[I] = 1,当为黑子时标志[I] = 2,且标志[I]不为0时不能落子; 4.设置判断语句,当列5子时,竖5子,斜5子时为胜利,并计分; 5.重新开始 - 重新初始化变量. 采

  • 纯javascript模仿微信打飞机小游戏

    七夕情人节也不要忘了打游戏喔喔-,下面小编为大家准备的情人节礼物之纯javascript模仿微信打飞机小游戏分享给天下的情人们. 首先给大家展示效果图: 查看演示      源码下载 纯JavaScript模仿微信打飞机游戏,做网页小游戏的借鉴下,界面设计是竖长形仿手机屏幕风格,游戏效果流畅.具有分数统计,里面的JS封装类中包括有创建飞机类.飞机移动行为控制,创建子弹类,产生min到max之间的随机数,判断本方飞机是否移出边界,如果移出边界,则取消mousemove事件,反之加上mousemov

  • javascript两段代码,两个小技巧

    第一段代码就是强调一下这个用法,我在我的项目中使用了一个switch,后来我发现这样的代码好丑,于是我就写成||&&形式的, 后来测试性能的时候,发现性能竟然上了一个数量级,可见这种写法在某些情况下可以增加性能,但是我并不确定是何种情况才能提高性能,因为我测试在通常情况下switch和||&&的性能是差不多的. 原来的代码: 复制代码 代码如下: switch(this.now_char=this.str.charAt(this.index)){ case "/&

  • JavaScript性能优化之小知识总结

    随着网络的发展,网速和机器速度的提高,越来越多的网站用到了丰富客户端技术.而现在Ajax则是最为流行的一种方式.JavaScript是一种解释型语言,所以能无法达到和C/Java之类的水平,限制了它能在客户端所做的事情,为了能改进他的性能,我想基于我以前给JavaScript做过的很多测试来谈谈自己的经验,希望能帮助大家改进自己的JavaScript脚本性能. 前言 一直在学习javascript,也有看过<犀利开发Jquery内核详解与实践>,对这本书的评价只有两个字犀利,可能是对javas

随机推荐