javascript实现输出指定行数正方形图案的方法


Posted in Javascript onAugust 03, 2015

本文实例讲述了javascript实现输出指定行数正方形图案的方法。分享给大家供大家参考。具体如下:

javascript实现输出指定行数的正方形图案:点击生成图案,会有2个提示框,1,输入图案的组成字符,只能是1个字符哦2,输入正方形行数,路过大于10,会设置为10行数

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title> 生成正方形 </title>
<Script type='text/javascript'>
//动态测字符的宽度,传入字符,放在span,判断宽度变化,返回
function get_width(zifu){
if(cwidth.innerHTML.length>0)cwidth.innerHTML='';//路过有元素,清空
var oldwidth=cwidth.offsetWidth;
cwidth.innerHTML=zifu;
var zifu_width=cwidth.offsetWidth-oldwidth;
cwidth.innerHTML='';
//alert(zifu_width);
return zifu_width;
}
//输出正方形函数
function create(){
var tuxing=prompt('请输入图案,必须1个字符');//图案,路 a 
if(tuxing==null||tuxing==''||tuxing.length>1){
alert('请输入图 案,图案必须1个字符');
return false;
}
//提示框,输入行数
var count=prompt('请输入正方形的行数');
if(count==null||count==''||count<1||isNaN(count)){
alert('您的输入的行数存在问题,1.不得空2.大于1 3.不得为非数字');
return false;
}
//根据行数,得到一行的字符窜
if(count>10){count=10;alert('输入的行数大于10,自动修改为10');}
var hangstr='';
for(i=1;i<=count;i++){
hangstr+=tuxing+' ';
//判断变长是否超过文档的
if(get_width(hangstr)>maxw-100){
alert('过长的行');
count=i-1;
hangstr=oldhangstr;
break;
}
oldhangstr=hangstr;
}
//生成图形字符串
var tustr='';//图形字符串
for(i=1;i<=count;i++)tustr+=hangstr+'<br/>';
//把图形字符串放入图形层
zengfang.innerHTML=tustr;
}
</script>
 </head>
 <body>
 <div id='zengfang'>此处显示图形</div>
 <input type='button' value='生成正方形图案' onclick='create()'>
<br>
<span id='cwidth'></span>
<!-- 测试获取字符串的宽度,因为行数过大,会超过文档范围,而发生折行
<input type='text' value='' id='text1'>
 <input type='button' value='显示字符宽度' onclick='get_width(text1.value)'>
 -->
 <Script type='text/javascript'>
 var maxh=document.body.clientHeight;//文档高 正方形最大长度
 var maxw=document.body.clientWidth;//文档宽,正方形最大长度
 //alert(maxh);
 //alert(maxw);
 </script>
 </body>
</html>

效果图:

图案字符:A,行数:5

javascript实现输出指定行数正方形图案的方法

javascript实现输出指定行数正方形图案的方法

希望本文所述对大家的javascript程序设计有所帮助。

Javascript 相关文章推荐
javascript面向对象编程代码
Dec 19 Javascript
Javascript模块化编程(一)模块的写法最佳实践
Jan 17 Javascript
基于bootstrap实现广告轮播带图片和文字效果
Jul 22 Javascript
js文件中直接alert()中文出来的是乱码的解决方法
Nov 01 Javascript
JS简单实现数组去重的方法示例
Mar 27 Javascript
微信小程序button组件使用详解
Jan 31 Javascript
vue 动态改变静态图片以及请求网络图片的实现方法
Feb 07 Javascript
vue项目中引入noVNC远程桌面的方法
Mar 05 Javascript
详解vue指令与$nextTick 操作DOM的不同之处
Aug 02 Javascript
JS数组求和的常用方法实例小结
Jan 07 Javascript
vue实现微信获取用户信息的方法
Mar 21 Javascript
前端vue-cli项目中使用img图片和background背景图的几种方法
Nov 13 Javascript
如何用js 实现依赖注入的思想,后端框架思想搬到前端来
Aug 03 #Javascript
javascript常见数据验证插件大全
Aug 03 #Javascript
javascript自定义in_array()函数实现方法
Aug 03 #Javascript
JavaScript简单修改窗口大小的方法
Aug 03 #Javascript
javascript实现随机读取数组的方法
Aug 03 #Javascript
JS实现选择TextArea内文本的方法
Aug 03 #Javascript
Javascript连接Access数据库完整实例
Aug 03 #Javascript
You might like
在任意字符集下正常显示网页的方法一
2007/04/01 PHP
ZF等常用php框架中存在的问题
2008/01/10 PHP
PHP中is_dir()函数使用指南
2015/05/08 PHP
php注册和登录界面的实现案例(推荐)
2016/10/24 PHP
PHP延迟静态绑定的深入讲解
2018/04/02 PHP
XHTML-Strict 内允许出现的标签
2006/12/11 Javascript
js修改input的type属性及浏览器兼容问题探讨与解决
2013/01/23 Javascript
调试代码导致IE出错的避免方法
2014/04/04 Javascript
使用AmplifyJS组件配合JavaScript进行编程的指南
2015/07/28 Javascript
Windows环境下npm install 报错: operation not permitted, rename的解决方法
2016/09/26 Javascript
详解Angularjs在控制器(controller.js)中使用过滤器($filter)格式化日期/时间实例
2017/02/17 Javascript
js中的面向对象入门
2017/03/06 Javascript
简单实现js鼠标跟随效果
2020/08/02 Javascript
vue里面父组件修改子组件样式的方法
2018/02/03 Javascript
vue axios整合使用全攻略
2018/05/24 Javascript
小程序视频或音频自定义可拖拽进度条的示例代码
2018/09/30 Javascript
webpack.DefinePlugin与cross-env区别详解
2020/02/23 Javascript
js数组中去除重复值的几种方法
2020/08/03 Javascript
[15:41]教你分分钟做大人——灰烬之灵
2015/03/11 DOTA
[37:29]完美世界DOTA2联赛PWL S2 LBZS vs Forest 第二场 11.19
2020/11/19 DOTA
Python中time模块和datetime模块的用法示例
2016/02/28 Python
浅谈Python黑帽子取代netcat
2018/02/10 Python
Python argparse模块应用实例解析
2019/11/15 Python
numpy np.newaxis 的实用分享
2019/11/30 Python
python中可以声明变量类型吗
2020/06/18 Python
谈谈python垃圾回收机制
2020/09/27 Python
法国面料和小百货在线商店:Mondial Tissus
2019/03/23 全球购物
什么是serialVersionUID
2016/03/04 面试题
高中生学期学习自我评价
2014/02/24 职场文书
小学数学教研活动总结
2014/07/01 职场文书
施工安全责任书范本
2014/07/24 职场文书
喝酒驾驶检讨书
2014/10/01 职场文书
小班教师个人总结
2015/02/05 职场文书
基层组织建设年活动总结
2015/05/09 职场文书
合同范本之电脑出租
2019/08/13 职场文书
将Python代码打包成.exe可执行文件的完整步骤
2021/05/12 Python