js打印纸函数代码(递归)


Posted in Javascript onJune 18, 2010
//打印纸尺寸,单位MM 
//http://en.wikipedia.org/wiki/ISO_216 
var page = function() { 
var A0 = { name: "A0", width: 841, height: 1189 }; //单位MM 
var B0 = { name: "B0", width: 1000, height: 1414 }; //单位MM 
var C0 = { name: "C0", width: 917, height: 1297 }; //单位MM 
//获取前一个规格 
function getPrefixSize(name) { 
var list = name.split(''); 
var series = list[0]; 
var number = parseInt(list[1]); 
if (!isNaN(number) && number > 0) { 
return series + (number - 1); 
} 
} 
//获取规格的尺寸 
function getSize(name) { 
if (name == "C7/6") { 
return { name: "C7/6", width: 81, height: 162 }; 
} 
var list = name.split(''); 
var series = list[0]; 
var number = parseInt(list[1]); 
if (isNaN(number)) { 
return; 
} 
if (number == 0) { 
if (series == "A") { return A0; } 
else if (series == "B") { return B0; } 
else if (series == "C") { return C0; } 
} 
return { name: name, width: parseInt(getSize(getPrefixSize(name)).height / 2), height: parseInt(getSize(getPrefixSize(name)).width) }; 
} 
return { 
getSize: getSize 
} 
} ();

用法
page.getSize('A4')
Javascript 相关文章推荐
JQuery给元素添加/删除节点比如select
Apr 02 Javascript
JavaScript实现继承的4种方法总结
Oct 16 Javascript
JavaScript实现的经典文件树菜单效果
Sep 08 Javascript
JS实现的页面自定义滚动条效果
Oct 26 Javascript
JavaScript操作URL的相关内容集锦
Oct 29 Javascript
值得学习的bootstrap fileinput文件上传工具
Nov 08 Javascript
Bootstrap风格的WPF样式
Dec 07 Javascript
Vue 2.5 Level E 发布了: 新功能特性一览
Oct 24 Javascript
Bootstrap标签页(Tab)插件切换echarts不显示问题的解决
Jul 13 Javascript
详解Js里的for…in和for…of的用法
Mar 28 Javascript
layui数据表格重载实现往后台传参
Nov 15 Javascript
vue 数据双向绑定的实现方法
Mar 04 Vue.js
jquery 弹出层注册页面等(asp.net后台)
Jun 17 #Javascript
jquery 多行滚动代码(附详细解释)
Jun 17 #Javascript
关于juqery radio写法的兼容性问题(新老版本jquery)
Jun 14 #Javascript
jQuery+jqmodal弹出窗口实现代码分明
Jun 14 #Javascript
ExtJS 设置级联菜单的默认值
Jun 13 #Javascript
js 未结束的字符串常量错误解决方法
Jun 13 #Javascript
JSON 和 JavaScript eval使用说明
Jun 13 #Javascript
You might like
风味层面去分析咖啡油脂
2021/03/03 咖啡文化
php 分页原理详解
2009/08/21 PHP
php使用pack处理二进制文件的方法
2014/07/03 PHP
Zend Framework教程之Resource Autoloading用法实例
2016/03/08 PHP
PHP基于单例模式编写PDO类的方法
2016/09/13 PHP
jQuery的显示和隐藏方法与css隐藏的样式对比
2013/10/18 Javascript
jquery实现多行文字图片滚动效果示例代码
2014/10/10 Javascript
BootStrap智能表单实战系列(七)验证的支持
2016/06/13 Javascript
JQuery查找子元素find()和遍历集合each的方法总结
2017/03/07 Javascript
解决bootstrap中使用modal加载kindeditor时弹出层文本框不能输入的问题
2017/06/05 Javascript
AngularJS的ng-click传参的方法
2017/06/19 Javascript
Vue Transition实现类原生组件跳转过渡动画的示例
2017/08/19 Javascript
React Native模块之Permissions权限申请的实例相机
2017/09/28 Javascript
利用pm2部署多个node.js项目的配置教程
2017/10/22 Javascript
JQuery实现table中tr上移下移的示例(超简单)
2018/01/08 jQuery
JavaScript面试出现频繁的一些易错点整理
2018/03/29 Javascript
JavaScript中的函数式编程详解
2020/08/22 Javascript
Vue基本指令实例图文讲解
2021/02/25 Vue.js
python实现unicode转中文及转换默认编码的方法
2017/04/29 Python
Python 高级专用类方法的实例详解
2017/09/11 Python
python ansible服务及剧本编写
2017/12/29 Python
python实现监控某个服务 服务崩溃即发送邮件报告
2018/06/21 Python
Python常用数据分析模块原理解析
2020/07/20 Python
实例代码讲解Python 线程池
2020/08/24 Python
python中lower函数实现方法及用法讲解
2020/12/23 Python
基于pycharm 项目和项目文件命名规则的介绍
2021/01/15 Python
HTML5的postMessage的使用手册
2018/12/19 HTML / CSS
大学生专科学习生活的自我评价
2013/12/07 职场文书
安全检查验收制度
2014/01/12 职场文书
互联网创业计划书写作技巧攻略
2014/03/23 职场文书
证券公司客户经理岗位职责
2015/04/09 职场文书
施工单位工程部经理岗位职责
2015/04/09 职场文书
2019升学宴主持词范本5篇
2019/10/09 职场文书
浅谈Laravel中使用Slack进行异常通知
2021/05/29 PHP
深入讲解Vue中父子组件通信与事件触发
2022/03/22 Vue.js
MySql分区类型及创建分区的方法
2022/04/13 MySQL