javascript實(shí)現(xiàn)輸出指定行數(shù)正方形圖案的方法
本文實(shí)例講述了javascript實(shí)現(xiàn)輸出指定行數(shù)正方形圖案的方法。分享給大家供大家參考。具體如下:
javascript實(shí)現(xiàn)輸出指定行數(shù)的正方形圖案:點(diǎn)擊生成圖案,會有2個提示框,1,輸入圖案的組成字符,只能是1個字符哦2,輸入正方形行數(shù),路過大于10,會設(shè)置為10行數(shù)
<!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'> //動態(tài)測字符的寬度,傳入字符,放在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; } //輸出正方形函數(shù) function create(){ var tuxing=prompt('請輸入圖案,必須1個字符');//圖案,路 a if(tuxing==null||tuxing==''||tuxing.length>1){ alert('請輸入圖 案,圖案必須1個字符'); return false; } //提示框,輸入行數(shù) var count=prompt('請輸入正方形的行數(shù)'); if(count==null||count==''||count<1||isNaN(count)){ alert('您的輸入的行數(shù)存在問題,1.不得空2.大于1 3.不得為非數(shù)字'); return false; } //根據(jù)行數(shù),得到一行的字符竄 if(count>10){count=10;alert('輸入的行數(shù)大于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> <!-- 測試獲取字符串的寬度,因為行數(shù)過大,會超過文檔范圍,而發(fā)生折行 <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,行數(shù):5
希望本文所述對大家的javascript程序設(shè)計有所幫助。
相關(guān)文章
javascript實(shí)現(xiàn)在網(wǎng)頁任意處點(diǎn)左鍵彈出隱藏菜單的方法
這篇文章主要介紹了javascript實(shí)現(xiàn)在網(wǎng)頁任意處點(diǎn)左鍵彈出隱藏菜單的方法,設(shè)計鼠標(biāo)事件及css樣式操作的相關(guān)技巧,需要的朋友可以參考下2015-05-05JS實(shí)現(xiàn)的添加彈出層并完成鎖屏操作示例
這篇文章主要介紹了JS實(shí)現(xiàn)的添加彈出層并完成鎖屏操作,涉及JS針對頁面元素與樣式動態(tài)操作相關(guān)技巧,需要的朋友可以參考下2017-04-04JavaScript中判斷頁面關(guān)閉、頁面刷新的實(shí)現(xiàn)代碼
這篇文章主要介紹了JavaScript中判斷頁面關(guān)閉、頁面刷新的實(shí)現(xiàn)代碼,在一些特殊的場合中會用到這個技術(shù),需要的朋友可以參考下2014-08-08基于BootStrap實(shí)現(xiàn)簡潔注冊界面
這篇文章主要介紹了基于BootStrap實(shí)現(xiàn)簡潔注冊界面,需要的朋友可以參考下2017-07-07一覽畫面點(diǎn)擊復(fù)選框后獲取多個id值的方法
這篇文章主要介紹了在一覽畫面點(diǎn)擊復(fù)選框后獲取多個id值的方法,前臺采用js技術(shù)后臺采用java技術(shù)實(shí)現(xiàn)的,邏輯清晰,非常不錯,具有參考借鑒價值,感興趣的朋友一起看看吧2016-05-05自動刷新網(wǎng)頁,自動刷新當(dāng)前頁面,JS調(diào)用
自動刷新網(wǎng)頁,自動刷新當(dāng)前頁面,JS調(diào)用,需要的朋友可以參考一下2013-06-06