博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
200多个js技巧代码(五)
阅读量:6717 次
发布时间:2019-06-25

本文共 8151 字,大约阅读时间需要 27 分钟。

161.标题栏document.title//162.背景图片//背景图片不动//背景图片居中163.设置透明效果document.form.xxx.filters.alpha.opacity=0~100//164.定义方法var dragapproved=false;document.οnmοuseup=new Function("dragapproved = false");// 165.将数字转化为人民币大写形式function convertCurrency(currencyDigits) {// Constants: var MAXIMUM_NUMBER = 99999999999.99; // Predefine the radix characters and currency symbols for output: var CN_ZERO = "零"; var CN_ONE = "壹"; var CN_TWO = "贰"; var CN_THREE = "叁"; var CN_FOUR = "肆"; var CN_FIVE = "伍"; var CN_SIX = "陆"; var CN_SEVEN = "柒"; var CN_EIGHT = "捌"; var CN_NINE = "玖"; var CN_TEN = "拾"; var CN_HUNDRED = "佰"; var CN_THOUSAND = "仟"; var CN_TEN_THOUSAND = "万"; var CN_HUNDRED_MILLION = "亿"; var CN_SYMBOL = "人民币"; var CN_DOLLAR = "元"; var CN_TEN_CENT = "角"; var CN_CENT = "分"; var CN_INTEGER = "整"; // Variables: var integral; // Represent integral part of digit number. var decimal; // Represent decimal part of digit number. var outputCharacters; // The output result. var parts; var digits, radices, bigRadices, decimals; var zeroCount; var i, p, d; var quotient, modulus; // Validate input string: currencyDigits = currencyDigits.toString(); if (currencyDigits == "") {  alert("Empty input!");  return ""; } if (currencyDigits.match(/[^,.\d]/) != null) {  alert("Invalid characters in the input string!");  return ""; } if ((currencyDigits).match(/^((\d{1,3}(,\d{3})*(.((\d{3},)*\d{1,3}))?)|(\d+(.\d+)?))$/) == null) {  alert("Illegal format of digit number!");  return ""; } // Normalize the format of input digits: currencyDigits = currencyDigits.replace(/,/g, ""); // Remove comma delimiters. currencyDigits = currencyDigits.replace(/^0+/, ""); // Trim zeros at the beginning. // Assert the number is not greater than the maximum number. if (Number(currencyDigits) > MAXIMUM_NUMBER) {  alert("Too large a number to convert!");  return ""; } // Process the coversion from currency digits to characters: // Separate integral and decimal parts before processing coversion: parts = currencyDigits.split("."); if (parts.length > 1) {  integral = parts[0];  decimal = parts[1];  // Cut down redundant decimal digits that are after the second.  decimal = decimal.substr(0, 2); } else {  integral = parts[0];  decimal = ""; } // Prepare the characters corresponding to the digits: digits = new Array(CN_ZERO, CN_ONE, CN_TWO, CN_THREE, CN_FOUR, CN_FIVE, CN_SIX, CN_SEVEN, CN_EIGHT,CN_NINE); radices = new Array("", CN_TEN, CN_HUNDRED, CN_THOUSAND); bigRadices = new Array("", CN_TEN_THOUSAND, CN_HUNDRED_MILLION); decimals = new Array(CN_TEN_CENT, CN_CENT); // Start processing: outputCharacters = ""; // Process integral part if it is larger than 0: if (Number(integral) > 0) {  zeroCount = 0;  for (i = 0; i < integral.length; i++) {   p = integral.length - i - 1;   d = integral.substr(i, 1);   quotient = p / 4;   modulus = p % 4;   if (d == "0") {    zeroCount++;   }   else {    if (zeroCount > 0)    {     outputCharacters += digits[0];    }    zeroCount = 0;    outputCharacters += digits[Number(d)] + radices[modulus];   }   if (modulus == 0 && zeroCount < 4) {    outputCharacters += bigRadices[quotient];   }  }  outputCharacters += CN_DOLLAR; } // Process decimal part if there is: if (decimal != "") {  for (i = 0; i < decimal.length; i++) {   d = decimal.substr(i, 1);   if (d != "0") {    outputCharacters += digits[Number(d)] + decimals[i];   }  } } // Confirm and return the final output string: if (outputCharacters == "") {  outputCharacters = CN_ZERO + CN_DOLLAR; } if (decimal == "") {  outputCharacters += CN_INTEGER; } outputCharacters = CN_SYMBOL + outputCharacters; return outputCharacters;}// 166.xml数据岛绑定表格
接收人 发送人 主题 内容
表格的结束
//cd_catalog.xml
Empire Burlesque
Bob Dylan
USA
Columbia
10.90
1985
Hide your heart
Bonnie Tyler
UK
CBS Records
9.90
1988
Greatest Hits
Dolly Parton
USA
RCA
9.90
1982
Still got the blues
Gary Moore
UK
Virgin records
10.20
1990
//167.以下组合可以正确显示汉字================================xml保存编码 xml页面指定编码ANSI gbk/GBK、gb2312Unicode unicode/UnicodeUTF-8 UTF-8================================ 168.XML操作
169.动态修改CSS的另一种方式this.runtimeStyle.cssText = "color:#990000;border:1px solid #cccccc";//170.正则表达式匹配中文字符的正则表达式: [\u4e00-\u9fa5]匹配双字节字符(包括汉字在内):[^\x00-\xff]应用:计算字符串的长度(一个双字节字符长度计2,ASCII字符计1)String.prototype.len=function(){return this.replace([^\x00-\xff]/g,"aa").length;}匹配空行的正则表达式:\n[\s| ]*\r匹配HTML标记的正则表达式:/<(.*)>.*<\/\1>|<(.*) \/>/匹配首尾空格的正则表达式:(^\s*)|(\s*$)应用:javascript中没有像vbscript那样的trim函数,我们就可以利用这个表达式来实现,如下:String.prototype.trim = function(){    return this.replace(/(^\s*)|(\s*$)/g, "");}利用正则表达式分解和转换IP地址:下面是利用正则表达式匹配IP地址,并将IP地址转换成对应数值的Javascript程序:function IP2V(ip){ re=/(\d+)\.(\d+)\.(\d+)\.(\d+)/g  //匹配IP地址的正则表达式if(re.test(ip)){return RegExp.$1*Math.pow(255,3))+RegExp.$2*Math.pow(255,2))+RegExp.$3*255+RegExp.$4*1}else{ throw new Error("Not a valid IP address!")}}不过上面的程序如果不用正则表达式,而直接用split函数来分解可能更简单,程序如下:var ip="10.100.20.168"ip=ip.split(".")alert("IP值是:"+(ip[0]*255*255*255+ip[1]*255*255+ip[2]*255+ip[3]*1))匹配Email地址的正则表达式:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*匹配网址URL的正则表达式:http://([\w-]+\.)+[\w-]+(/[\w- ./?%&=]*)?//利用正则表达式去除字串中重复的字符的算法程序:var s="abacabefgeeii"var s1=s.replace(/(.).*\1/g,"$1")var re=new RegExp("["+s1+"]","g")var s2=s.replace(re,"")alert(s1+s2)  //结果为:abcefgi思路是使用后向引用取出包括重复的字符,再以重复的字符建立第二个表达式,取到不重复的字符,两者串连。这个方法对于字符顺序有要求的字符串可能不适用。//得用正则表达式从URL地址中提取文件名的javascript程序,如下结果为page1s="http://www.9499.net/page1.htm"s=s.replace(/(.*\/){0,}([^\.]+).*/ig,"$2")alert(s)/利用正则表达式限制网页表单里的文本框输入内容:用正则表达式限制只能输入中文:οnkeyup="value=value.replace(/[^\u4E00-\u9FA5]/g,'')"onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\u4E00-\u9FA5]/g,''))"用正则表达式限制只能输入全角字符: οnkeyup="value=value.replace(/[^\uFF00-\uFFFF]/g,'')"onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\uFF00-\uFFFF]/g,''))"用正则表达式限制只能输入数字:οnkeyup="value=value.replace(/[^\d]/g,'')"onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))"用正则表达式限制只能输入数字和英文:οnkeyup="value=value.replace(/[\W]/g,'')"onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))" 171.设置和使用cookie设置与读取 cookies...
写入cookie的值
// 172.取月的最后一天function getLastDay(year,month){ //取年 var new_year = year; //取到下一个月的第一天,注意这里传入的month是从1~12 var new_month = month++; //如果当前是12月,则转至下一年 if(month>12) { new_month -=12; new_year++; } var new_date = new Date(new_year,new_month,1); return (new Date(new_date.getTime()-1000*60*60*24)).getDate();}//173.判断当前的焦点是组中的哪一个for(var i=0;i<3;i++) if(event.srcElement==bb[i]) break;// 174.实现类package com.baosight.view.utils;import javax.servlet.jsp.tagext.TagSupport;import javax.servlet.http.HttpSession;public class Mytag extends TagSupport{ public int doStartTag() throws javax.servlet.jsp.JspException { boolean canAccess = false; HttpSession session= pageContext.getSession(); if (canAccess) { return EVAL_BODY_INCLUDE; } else { return this.SKIP_BODY; } }}175.在web.xml中添加定义
guoguo
/WEB-INF/abc.tld
176.标签库中定义abc.tld
1.0
1.1
hr
guoguo
Extra 3 Tag Library
mytag
com.baosight.view.utils.Mytag
id2
true
true
177.在使用自定义标签的页面中加入自己定义的标签,<%@ taglib uri="guoguo" prefix="guoguo"%>//自己定义标签 178.显示带边框的集
查询条件dfdfdf
//179.【文件(F)】菜单中的命令的实现
 

转载地址:http://jdkmo.baihongyu.com/

你可能感兴趣的文章
举重若轻的人人车移动端数据平台
查看>>
麻省理工学院研究人员设计出针对幽灵党和熔毁的DAWG方法
查看>>
自由软件救世主Richard Stallman:我们可以比比特币做得更好
查看>>
AlphaZero进化论:从零开始,制霸所有棋类游戏
查看>>
百度云BaaS体系揭秘,突破共识机制、单机计算和串行处理三大瓶颈
查看>>
Prometheus正式从CNCF毕业
查看>>
专访《更敏捷的测试》作者Janet Gregory和Lisa Crispin
查看>>
伯克利论断:Serverless 才是云时代的主宰
查看>>
理解BERT Transformer:Attention is not all you need!
查看>>
PHP实现博客Ping功能源码分享
查看>>
端到端的超媒体REST API设计
查看>>
Microsoft的现代数据管理
查看>>
AI如何帮助亚马逊达成市值万亿美元成就?
查看>>
马化腾演讲、张勇内部讲话暴露两大巨头云上端倪
查看>>
.NET Core 3.0中的数据库驱动框架System.Data
查看>>
英特尔发布CPU新架构,突破性采用3D堆栈法
查看>>
Elixir 1.3带来新的语言功能、API和改进后的工具
查看>>
Pivotal发布包含反应式数据访问特性的新一代Spring Data的第一个里程碑版本
查看>>
Guava-Optional(译)
查看>>
最新的Java SE平台和JDK版本发布计划
查看>>