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 相关文章推荐
使用Modello编写JavaScript类
Dec 22 Javascript
javascript 学习笔记(六)浏览器类型及版本信息检测代码
Apr 08 Javascript
js多级树形弹出一个小窗口层(非常好用)实例代码
Mar 19 Javascript
JavaScript中获取样式的原生方法小结
Oct 08 Javascript
AngualrJS中的Directive制作一个菜单
Jan 26 Javascript
js enter键激发事件实例代码
Aug 17 Javascript
浅谈jquery中next与siblings的区别
Oct 27 Javascript
使用JS代码实现点击按钮下载文件
Nov 12 Javascript
vue router仿天猫底部导航栏功能
Oct 18 Javascript
解决Idea、WebStorm下使用Vue cli脚手架项目无法使用Webpack别名的问题
Oct 11 Javascript
vue项目中使用eslint+prettier规范与检查代码的方法
Jan 16 Javascript
vue-resource 拦截器interceptors使用详解
Jan 18 Vue.js
如何用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
通过5个php实例细致说明传值与传引用的区别
2012/08/08 PHP
在openSUSE42.1下编译安装PHP7 的方法
2015/12/24 PHP
PHP中include和require的区别实例分析
2017/05/07 PHP
PHP实现获取文件mime类型多种方法解析
2020/05/28 PHP
gridpanel动态加载数据的实例代码
2013/07/18 Javascript
jQuery 回车事件enter使用示例
2014/02/18 Javascript
从数据库读取数据后将其输出成html标签的三种方法
2014/10/13 Javascript
Bootstrap网格系统详解
2016/04/26 Javascript
全面解析jQuery $(document).ready()和JavaScript onload事件
2016/06/08 Javascript
AngularJS+Bootstrap实现多文件上传与管理
2016/11/08 Javascript
jQuery移除或禁用html元素点击事件常用方法小结
2017/02/10 Javascript
vue.js+Echarts开发图表放大缩小功能实例
2017/06/09 Javascript
Vue 中使用 CSS Modules优雅方法
2018/04/09 Javascript
React为 Vue 引入容器组件和展示组件的教程详解
2018/05/03 Javascript
优雅地使用loading(推荐)
2019/04/20 Javascript
使用jQuery mobile NuGet让你的网站在移动设备上同样精彩
2019/06/18 jQuery
JS 逻辑判断不要只知道用 if-else 和 switch条件判断(小技巧)
2020/05/27 Javascript
[14:51]DOTA2 HEROS教学视频教你分分钟做大人-卓尔游侠
2014/06/13 DOTA
跟老齐学Python之集合(set)
2014/09/24 Python
Python随机函数random()使用方法小结
2018/04/29 Python
使用EduBlock轻松学习Python编程
2018/10/08 Python
Django的Modelforms用法简介
2019/07/27 Python
python3 实现的对象与json相互转换操作示例
2019/08/17 Python
Python django框架开发发布会签到系统(web开发)
2020/02/12 Python
django Model层常用验证器及自定义验证器详解
2020/07/15 Python
python接口自动化之ConfigParser配置文件的使用详解
2020/08/03 Python
英国二手物品交易网站:Preloved
2017/10/06 全球购物
法国面料和小百货在线商店:Mondial Tissus
2019/03/23 全球购物
应届生求职推荐信
2013/10/28 职场文书
股东合作协议书
2014/04/14 职场文书
教师节演讲稿
2014/05/06 职场文书
材料物理专业求职信
2014/09/01 职场文书
公司领导班子召开党的群众路线教育实践活动总结大会新闻稿
2014/10/21 职场文书
2015年爱国卫生工作总结
2015/04/22 职场文书
投诉信范文
2015/07/02 职场文书
MySQL创建索引需要了解的
2021/04/08 MySQL