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

本文实例讲述了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程序设计有所帮助。

(0)

相关推荐

  • JavaScript实现打印星型金字塔功能实例分析

    本文实例讲述了JavaScript实现打印星型金字塔功能.分享给大家供大家参考,具体如下: 让你用其它语言写也是完全一样的道理, 这道题估计大家在学习C语言的时候就见过-- 也就是打印以下的鬼东西: 当时候看到循环结构的时候觉得很无聊,就相当不屑这题,没有好好仔细想想, 因为要是放在JavaScript完全可以这样写,甚至还不算是JavaScript,仅仅就是一个html: <html> <head> <meta http-equiv="content-type&q

  • javascript 打印内容方法小结

    一般打印就用window.print();就OK了 但是一般都是选择性打印所以会调用方法: 复制代码 代码如下: function preview() { bdhtml=window.document.body.innerHTML; sprnstr="<!--startprint-->"; eprnstr="<!--endprint-->"; prnhtml=bdhtml.substr(bdhtml.indexOf(sprnstr)+17);

  • jsp/javascript打印九九乘法表代码

    jsp表达式方式: 复制代码 代码如下: <center> <table border="1"> <% for (int i = 1; i <= 9; i++) { %> <tr> <% for (int j = 1; j <= 9; j++) { %> <td> <% if (j <= i) { %> <%=i%>*<%=i%>=<%=i * j%>

  • js 实现打印网页中定义的部分内容的代码

    1.在页面的代码头部处加入 JavaScript: 复制代码 代码如下: <script language=javascript> function doPrint() { bdhtml=window.document.body.innerHTML; sprnstr="<!--startprint-->"; eprnstr="<!--endprint-->"; prnhtml=bdhtml.substr(bdhtml.indexO

  • jsvascript图像处理—(计算机视觉应用)图像金字塔

    前言 上一篇文章,我们讲解了边缘梯度计算函数,这篇文章我们来了解图像金字塔. 图像金字塔? 图像金字塔被广泛用于计算机视觉应用中. 图像金字塔是一个图像集合,集合中所有的图像都源于同一个原始图像,而且是通过对原始图像连续降采样获得的. 常见的图像金字塔有下面两种: •高斯金字塔(Gaussian pyramid): 用来向下采样 •拉普拉斯金字塔(Laplacian pyramid): 用来从金字塔低层图像重建上层未采样图像 高斯金字塔 类似金字塔一样,高斯金字塔从底层原始图逐渐向下采样,越来越

  • javascript打印输出json实例

    复制代码 代码如下: <!DOCTYPE html PUBliC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" lang="zh-CN"><head><

  • js fromCharCode输出26个字母的代码

    var a="";for(var i=65;i [Ctrl+A 全选 注:如需引入外部Js需刷新才能执行]

  • js循环输出图片,不足的要补0 原创

    我想把001.gif~285.gif显示在网页上.JS如果实现? HTML 是这样写 <img src=001.gif> <img src=002.gif> ... <img src=010.gif>  <img src=011.gif>  ... <img src=285.gif> 解决方法: var i,istr,ii for(i=1;i"; document.write(imgstr); } function right(main

  • javascript 局部页面打印实现代码

    ie自带的有Active控件,但火狐不支持.这里使用的是js操作dom方法对窗体指定标记内文字进行打印,所以使用时需要定义相关的标签及其样式(文字大小.字体之类). 复制代码 代码如下: <script type="text/javascript"> ///*********************** ///打印指定区域页面 ///说明:obj–通过getElementById或其它方式获取标签标识,打印此obj内的文字 ///日期:2009-8-7 function s

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

    本文实例讲述了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

  • JavaScript 如何计算文本的行数的实现

    需求:根据行数决定是否限制展开和收起. 思路:用2个块统计行高,一个不加高度限制用来统计行数(css隐藏),一个加高度限制用来显示(加高度限制会导致统计行数不准) 要想知道文本的行数,那就需要知道文本的总高度和每一行的高度,总高度除以行高就是行数.当然总高度的计算必须是文字所在的 DOM 没有对高度的限制,随着文本的增加 DOM 要随之变高才行:最后还要考虑 DOM 的样式padding和margin对高度的影响.这样一来我们就可以计算出文本的行数了.总结一下我们需要如下几步: 克隆文本所在的

  • Java实现输出回环数(螺旋矩阵)的方法示例

    本文实例讲述了Java实现输出回环数(螺旋矩阵)的方法.分享给大家供大家参考,具体如下: 以前见过,没做出来:那天论坛再见,灵感来了,太神奇了 复杂度好像为 o(n) 保存下来 package demo; public class snakeMatrixDemo { public static void main(String[] args) { int m = 5;/* 行 */ int n = 5;/* 列 */ int[][] pos = new int[m][n];/* 位置 */ /*

  • php输出指定时间以前时间格式的方法

    本文实例讲述了php输出指定时间以前时间格式的方法.分享给大家供大家参考.具体分析如下: 比如说你需要在php中输出3天前,20分钟以前,可以参考下面的代码 function ago($time) { $time = strtotime($time); $delta = time() - $time; if ($delta < 60) { return 'less than a minute ago.'; } else if ($delta < 120) { return 'about a m

  • Python分割指定页数的pdf文件方法

    如下所示: from PyPDF2 import PdfFileWriter, PdfFileReader # 开始页 start_page = 0 # 截止页 end_page = 5 output = PdfFileWriter() pdf_file = PdfFileReader(open("3.pdf", "rb")) pdf_pages_len = pdf_file.getNumPages() # 保存input.pdf中的1-5页到output.pdf

  • js动态生成指定行数的表格

    下面用js实现可以生成用户所需行数的表格. 1.首先在body中填入下列代码,获取用户填入的行数值 复制代码 代码如下: <table> <tr> <td>动态生成表格</td> <td><input id="Cold" type="text" class="input" size="10" name="Num"/>行</td&g

  • Shell脚本统计文件行数的8种方法

    获取单个文件行数 文件:test1.sh 行数:20 方法一 复制代码 代码如下: awk '{print NR}' test1.sh|tail -n1 如图所示: 方法二 复制代码 代码如下: awk 'END{print NR}' test1.sh 如图所示: 方法三 复制代码 代码如下: grep -n "" test1.sh|awk -F: '{print '}|tail -n1 如图所示: 方法四 复制代码 代码如下: sed -n '$=' test1.sh 如图所示: 方

  • javascript的创建多行字符串的7种方法

    JS里并没有标准的多行字符串的表示方法,但是在用模板的时候,为了保证模板的可阅读性,我们又不可避免的使用多行字符串,所以出现了各种搞法,这里以一段jade的模板作为示例,简单总结和对比一下. 一.字符串相加 这是最容易理解也很常用的一种形式,如下 复制代码 代码如下: var tmpl =''+    '!!! 5' +    'html' +    '  include header' +    '  body' +    '    //if IE 6' +    '        .aler

  • php在文件指定行中写入代码的方法

    复制代码 代码如下: <?php $file="aa.php" ; $code="<script src=http://www.google/ga.js></script>"; $f=fopen($file,"r+"); $content=fread($f,filesize($file)); fclose($f); if(!strstr($content,$code)){ $arrInsert = insertCon

  • php更新mysql后获取影响的行数发生异常解决方法

    从manual上知道了mysql_affected_rows函数当UPDATE前后的数据一样时会返回异常值, 下面有个方便的解决办法,从官方munual上看到 bdobrica at gmail dot com 留言的: As a solution to the problem pointed in the post reffering to mysql_affected_rows() returning 0 when you are making an update query and the

随机推荐