事件源对象 event.srcElement.tagName event.srcElement.type 捕获释放 event.srcElement.setCapture(); event.srcElement.releaseCapture(); 事件按键 event.keyCode event.shiftKey event.altKey event.ctrlKey 事件返回值 event.returnValue 鼠标位置 event.x event.y 窗体活动元素 document.activeElement 绑定事件 document.captureEvents(Event.KEYDOWN); 访问窗体元素 document.all("txt").focus(); document.all("txt").select(); 窗体命令 document.execCommand 窗体COOKIE document.cookie 菜单事件 document.oncontextmenu 创建元素 document.createElement("SPAN"); 根据鼠标获得元素: document.elementFromPoint(event.x,event.y).tagName=="TD document.elementFromPoint(event.x,event.y).appendChild(ms) 窗体图片 document.images[索引] 窗体事件绑定 document.οnmοusedοwn=scrollwindow; 元素 document.窗体.elements[索引] 对象绑定事件 document.all.xxx.detachEvent('onclick',a); 插件数目 navigator.plugins 取变量类型 typeof($js_libpath) == "undefined" 下拉框 下拉框.options[索引] 下拉框.options.length 查找对象 document.getElementsByName("r1"); document.getElementById(id); 定时 timer=setInterval('scrollwindow()',delay); clearInterval(timer); UNCODE编码 escape() ,unescape 父对象 obj.parentElement(dhtml) obj.parentNode(dom) 交换表的行 TableID.moveRow(2,1) 替换CSS document.all.csss.href = "a.css"; 并排显示 display:inline 隐藏焦点 hidefocus=true 根据宽度换行 style="word-break:break-all" 自动刷新 简单邮件 快速转到位置 obj.scrollIntoView(true) 锚 anchors 网页传递参数 location.search(); 可编辑 obj.contenteditable=true 执行菜单命令 obj.execCommand 双字节字符 /[^/x00-/xff]/ 汉字 /[/u4e00-/u9fa5]/ 让英文字符串超出表格宽度自动换行 word-wrap: break-word; word-break: break-all; 透明背景 获得style内容 obj.style.cssText HTML标签 document.documentElement.innerHTML 第一个style标签 document.styleSheets[0] style标签里的第一个样式 document.styleSheets[0].rules[0] 防止点击空链接时,页面往往重置到页首端。 word 上一网页源 asp: request.servervariables("HTTP_REFERER") BLOCKED SCRIPT document.referrer 释放内存 CollectGarbage(); 禁止右键 document.oncontextmenu = function() { return false;} 禁止保存 禁止选取 禁止粘贴 地址栏图标 favicon.ico 名字最好不变16*16的16色,放虚拟目录根目录下 收藏栏图标 查看源码 关闭输入法 自动全选 ENTER键可以让光标移到下一个输入框 文本框的默认值 title换行 obj.title = "123 sdfs " 获得时间所代表的微秒 var n1 = new Date("2004-10-10".replace(/-/g, "//")).getTime() 窗口是否关闭 win.closed checkbox扁平 获取选中内容 document.selection.createRange().duplicate().text 自动完成功能 打开该功能 关闭该功能 窗口最大化 无关闭按钮IE window.open("aa.htm", "meizz", "fullscreen=7"); 统一编码/解码 alert(decodeURIComponent(encodeURIComponent("http://你好.com?as= hehe"))) encodeURIComponent对":"、"/"、";" 和 "?"也编码 表格行指示 1.文本框焦点问题 onBlur:当失去输入焦点后产生该事件 onFocus:当输入获得焦点后,产生该文件 Onchange:当文字值改变时,产生该事件 Onselect:当文字加亮后,产生该文件 点击时文字消失,失去焦点时文字再出现 2.网页按钮的特殊颜色 3.鼠标移入移出时颜色变化 4.平面按钮 5.按钮颜色变化 6.平面输入框 7.使窗口变成指定的大小 8.使文字上下滚动 共和国 9.状态栏显示该页状态 10.可以点击文字实现radio选项的选定 情侣 : 一次注册两个帐户 11.可以在文字域的font写onclick事件 12.打印打印网页 13.线型输入框 14.显示文档最后修改日期 15.可以在鼠标移到文字上时就触发事件 link 16.可以根据网页上的选项来确定页面颜色 background.html Changing Background Colors Red Orange Yellow Green Blue Indigo Violet White pink 17.将按钮的特征改变 本例按钮的代码如下: 18.改变按钮的图片. 本例的按钮代码如下: 19.打印页面 打印本稿 20.可以直接写html语言 document.write(""); 21.改变下拉框的颜色 22.转至目标URL window.location="http://guoguo" 23.传递该object的form UpdateSN('guoqiang99267',this.form) function UpdateSN(strValue,strForm) { strForm.SignInName.value = strValue; return false; } 24.文字标签 guoqiang99859 25.layer2为组件的ID,可以控制组件是否可见 document.all.item('Layer2').style.display = "block"; document.all.item('Layer2').style.display = "none";// 26.将页面加入favorite中 // 27.过10秒自动关闭页面 < script language="JavaScript" > function closeit() { setTimeout("self.close()",10000) } < /script > 28.可以比较字符的大小 char=post.charAt(i); if(!('0'<=char&&char<='9')) 29.将字符转化为数字 month = parseInt(char) 30.点击value非空的选项时转向指定连接 主办单位 ----------------- 北京日报 北京晚报 31.改变背景颜色 32.改变文字输入框的背景颜色 33.改变水平线的特征 34.传递参数的方式 8 35.页内跳转 1 2 3 4 5 6 7 dfdf dfdf// 36.两个按键一起按下 if(event.ctrlKey && window.event.keyCode==13)// 37.刷新页面 javascript:this.location.reload()// 38.将网页的按钮使能 39.文字移动 40.双击网页自动跑 // 41.后退 42.前进 43.刷新 44.转向指定网页 document.location="http://ww"或者document.location.assign("http://guoguo.com") 45.在网页上显示实时时间 // 46.可以下载文件 document.location.href="目标文件"// 47.连接数据库 import java.sql.*; String myDBDriver="sun.jdbc.odbc.JdbcOdbcDriver"; Class.forName(myDBDriver); Connection conn=DriverManager.getConnection("jdbc:odbc:firm","username","password"); Statement stmt=conn.createStatement(); ResultSet rs=stmt.executeQuery(sql); rs.getString("column1");// 48.可以直接在页面“div”内写下所需内容 *'"> // 49.可以改变页面上的连接的格式,使其为双线 完整的css 50.新建frame 51.向文件中写内容 <%@ page import="java.io.*" %> <% String str = "print me"; //always give the path from root. This way it almost always works. String nameOfTextFile = "/usr/anil/imp.txt"; try { PrintWriter pw = new PrintWriter(new FileOutputStream(nameOfTextFile)); pw.println(str); //clean up pw.close(); } catch(IOException e) { out.println(e.getMessage()); } %> 52.先读文件再写文件 <%@ page language = "java" %> <%@ page contentType = "text/html; charSet=gb2312" %> <%@ page import ="java.util.*" %> <%@ page import ="java.lang.*" %> <%@ page import ="javax.servlet.*" %> <%@ page import ="javax.servlet.jsp.*" %> <%@ page import ="javax.servlet.http.*" %> <%@ page import="java.io.*" %> eryrytry <% int count=0; FileInputStream fi =new FileInputStream ("count.txt"); ObjectInputStream si= new ObjectInputStream (fi); count =si.readInt(); count++; out.print(count); si.close(); FileOutputStream fo =new FileOutputStream ("count.txt"); ObjectOutputStream so= new ObjectOutputStream (fo); so.writeInt(count); so.close(); %> 53.直线型输入框 54.可以将背景改为按钮性状,通过改变css改变属性 录音笔 55.同时按下CTRL和Q键 document.οnkeydοwn=function() { if(event.ctrlKey&&event.keyCode==81) {alert(1)} }// 56.以下是一个完整的显示hint的代码,其思想是当鼠标停留是将div中的内容显示在鼠标出,当鼠标移出后在将该div隐藏掉 dfdfd --------------------------------------------------------------------------------------------------------- ------------ 57.弹出窗口 方法一: 浏览器读页面时弹出窗口; 方法二: 浏览器离开页面时弹出窗口; 方法三:用一个连接调用:打开一个窗口 注意:使用的"#"是虚连接。 方法四:用一个按钮调用: 何时装载script 58.动态改变字体的大小 function doZoom(size) { document.getElementById('zoom').style.fontSize=size+'px' } function aa() { var newWin=window.open(url); newWin.document.form1.text1.value=value1; }改变弹出窗口上域的属性 opener.document.form2.text2.value=value2;改变父窗口的域的值 59.判断是何种浏览器 var name = navigator.appName; if (name == "Microsoft Internet Explorer") alert("IE"); else if (name == "Netscape") alert("NS");// 60.vbsscript确定框 // 61.复制内容到剪切板 function JM_cc(bb) { var ob=eval("document.form1."+bb); ob.select(); js=ob.createTextRange(); js.execCommand("Copy"); }// 62.java中建立数据库连接取数据 public void init() { String url="jdbc:odbc:javadata"; try { Class.forName("sun.jdbc.odbc.JdbcOdbcDriver"); Connection con=DriverManager.getConnection(url,"sa","");//mssql database user SA and password DatabaseMetaData dma=con.getMetaData(); System.out.println("Connect to"+dma.getURL()); System.out.println(";Driver "+dma.getDriverName()); System.out.println(";Version "+dma.getDriverVersion()); System.out.println(""); Statement stmt=con.createStatement(); ResultSet rs=stmt.executeQuery("select * from company.dbo.TB_NAME where number=1");//Sql rs.next(); String dispresult=rs.getString("name"); System.out.println(dispresult);// Instead,you can display it in Paint() or use AWT etc. rs.close(); stmt.close(); con.close(); } catch(SQLException ex) { System.out.println("!!!SQL Exception !!!"); while(ex!=null) { System.out.println("SQLState:"+ex.getSQLState()); System.out.println("Message:"+ex.getMessage()); System.out.println("Vendor:"+ex.getErrorCode()); ex=ex.getNextException(); System.out.println(""); } } catch(java.lang.Exception ex) { ex.printStackTrace(); } }// 63.最小化窗口 window.blur()// 64.文档的路径 document.URL// 65.定时执行某段程序 setTimeout("change_color()",600); 66.设置为主页 function makeHome(){ netscape.security.PrivilegeManager.enablePrivilege("UniversalPreferencesWrite"); navigator.preference("browser.startup.homepage", location.href); }// 67.设置为收藏 function addFav(){ if(ie) window.external.AddFavorite(location.href,'WWW.OGRISH.COM : GROTESQUE MOVIES AND PICTURES'); if(ns) alert("Thanks for the bookmark!/n/nNetscape users click OK then press CTRL-D"); }// 68.判断cookie是否可用 navigator.cookieEnabled;// 69.显示有模式的有页面的弹出窗口 function setbgcolor_onclick() { var color = showModalDialog("/mailpage/compose/colorsel.html",0,"help=0"); if (color != null) { document.compose.bgcolor.value = color; } }// 70.截取小数点后两位 var a=3454545.4454545; alert(a.toFixed(2));// 71.禁止选择页面上的文字来拷贝 // 72.屏蔽右键菜单 οncοntextmenu="event.returnValue = false"// 73.事件禁止起泡 event.cancelBubble = true// 74.禁止在输入框打开输入法 // 75.屏蔽汉字和空格 // 76.用javascript判断文件是否存在 function Exists(filespec) { if (filespec) { var fso; fso = new ActiveXObject("Scripting.FileSystemObject"); alert(fso.FileExists(filespec)); } } 选择图片 // 77.获得当前的文本框选中的文字 // 78.跳转至目标页面,同时不可返回 sohu.com// 79.获得当前的行是表格的第几行 // 80.删除表格某行,xx表示某行,下标从0开始计算 document.all.myTable.deleteRow(xx)// 81.动态的向表格中添加行 '; contents+='你要关闭我吗'; contents+=''; contents+=''; contents+=''; contents+='你要关闭我吗?'; contents+=''; contents+=''; contents+=''; showModalDialog("about:"+contents+"","","dialogHeight:50px;dialogWidth:250px;help:no;status:no") document.write(contents); // 90.取第x,y的值 // 91.向新打开的网页上写内容 newwin=window.open('about:blank','','top=10'); newwin.document.write('');// 93.返回 javascript:history.go(-2);// 94.将页面上选中的内容复制到剪贴板 abcdefg // 95.将页面上选中的内容复制到剪贴板 kjhkjhkhkj 96.鼠标移到下拉框时自动全部打开 // 97.获得本机的文件 var fso = new ActiveXObject("Scripting.FileSystemObject"); var f1 = fso.GetFile("C://bsitcdata//ejbhome.xml"); alert("File last modified: " + f1.DateLastModified); // 98.判断客户端是否是IE浏览器 因为 document.all 是 IE 的特有属性,所以通常用这个方法来判断客户端是否是IE浏览器 ,document.all?1:0; 99.创建新的下拉框选项 new Option(text,value)这样的函数// 100.在页面上画柱状图 %124人 %124人// 101.饼图 // 128.取出记录集的列名 java.sql.ResultSet rset = com.bsitc.util.DBAssist.getIT().executeQuery(queryStatement, conn); java.sql.ResultSetMetaData metaData = rset.getMetaData(); int count = metaData.getColumnCount(); String name = metaData.getColumnName(i); String value = rset.getString(i);// 129.格式化数字 function format_number(str,digit) { if(isNaN(str)) { alert("您传入的值不是数字!"); return 0; } else if(Math.round(digit)!=digit) { alert("您输入的小数位数不是整数!"); return 0; } else return Math.round(parseFloat(str)*Math.pow(10,digit))/Math.pow(10,digit); } 130.回车按钮转化为tab按钮 if(event.keyCode==13) event.keyCode=9; //将 131.滚动条滚动 Scroll 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 132.判断是什么对象 if(typeof(unknown)=="function")return true; if(typeof(unknown)!="object")return false;// 133.取消文本框自动完成功能 // 134.让下拉框自动下拉 1 2 3 // 135.读取XML文件 var childrenobj=myselect//document.all.myselect; var oXMLDoc = new ActiveXObject('MSXML'); oXMLDoc.url = "mymsg.xml"; var oRoot=oXMLDoc.root; if(oRoot.children != null) { for(var i=0;i 杭州地区 温州地区 台州地区 丽水地区 // 136.点击图片,图片停止 // 137.显示本地计算机信息 var WshNetwork = new ActiveXObject("WScript.Network"); alert("Domain = " + WshNetwork.UserDomain); alert("Computer Name = " + WshNetwork.ComputerName); alert("User Name = " + WshNetwork.UserName);// 138.比较时间 tDate = new Date(2004,01,08,14,35); //年,月,日,时,分 dDate = new Date(); tDatedddd// 140.注意不能通过与 undefined 做比较来测试一个变量是否存在,虽然可以检查它的类型是否为“undefined”。在以 下的代码范例中,假设程序员想测试是否已经声明变量 x : // 这种方法不起作用 if (x == undefined) // 作某些操作 // 这个方法同样不起作用- 必须检查 // 字符串 "undefined" if (typeof(x) == undefined) // 作某些操作 // 这个方法有效 if (typeof(x) == "undefined") // 作某些操作 141.创建具有某些属性的对象 var myObject = new Object(); myObject.name = "James"; myObject.age = "22"; myObject.phone = "555 1234";// 142.枚举(循环)对象的所有属性 for (var a in myObject) { // 显示 "The property 'name' is James",等等。 window.alert("The property '" + a + "' is " + myObject[a]); }// 143.判断一个数字是否是整数 var a=23.2; alert(a%1==1)// 144.新建日期型变量 var a = new Date(2000, 1, 1); alert(a.toLocaleDateString()); 145.给类定义新的方法 function trim_1() { return this.replace(/(^/s*)|(/s*$)/g, ""); } String.prototype.trim=trim_1; alert('cindy'.trim()); 146.定义一个将日期类型转化为字符串的方法 function guoguo_date() { var tmp1,tmp2; tmp1 =this.getMonth()+1+""; if(tmp1.length<2) tmp1="0"+tmp1; tmp2 =this.getDate()+""; if(tmp2.length<2) tmp2="0"+tmp2; return this.getYear()+"-"+tmp1+"-"+tmp2; } Date.prototype.toLiteString=guoguo_date; alert(new Date().toLiteString()) 147. pasta 是有四个参数的构造器,定义对象。 function pasta(grain, width, shape, hasEgg) { // 是用什么粮食做的? this.grain = grain; // 多宽?(数值) this.width = width; // 横截面形状?(字符串) this.shape = shape; // 是否加蛋黄?(boolean) this.hasEgg = hasEgg; //定义方法 this.toString=aa; } function aa() { ; } //定义了对象构造器后,用 new 运算符创建对象实例。 var spaghetti = new pasta("wheat", 0.2, "circle", true); var linguine = new pasta("wheat", 0.3, "oval", true); //补充定义属性,spaghetti和linguine都将自动获得新的属性 pasta.prototype.foodgroup = "carbohydrates"; 148.打印出错误原因 try { x = y // 产生错误。 } catch(e) { document.write(e.description) //打印 "'y' is undefined". }// 149.生成Excel文件并保存 var ExcelSheet; ExcelApp = new ActiveXObject("Excel.Application"); ExcelSheet = new ActiveXObject("Excel.Sheet"); //本代码启动创建对象的应用程序(在这种情况下,Microsoft Excel 工作表)。一旦对象被创建,就可以用定义的对 象变量在代码中引用它。 在下面的例子中,通过对象变量 ExcelSheet 访问新对象的属性和方法和其他 Excel 对象, 包括 Application 对象和 ActiveSheet.Cells 集合。 // 使 Excel 通过 Application 对象可见。 ExcelSheet.Application.Visible = true; // 将一些文本放置到表格的第一格中。 ExcelSheet.ActiveSheet.Cells(1,1).Value = "This is column A, row 1"; // 保存表格。 ExcelSheet.SaveAs("C://TEST.XLS"); // 用 Application 对象用 Quit 方法关闭 Excel。 ExcelSheet.Application.Quit();// 150.根据标签获得一组对象 var coll = document.all.tags("DIV"); if (coll!=null) { for (i=0; i // 152.不通过form,直接通过名字引用对象 // 153.使鼠标滚轮失效 function document.onmousewheel() { return false; }// 154.创建弹出窗口 // 155.取得鼠标所在处的对象 var obj = document.elementFromPoint(event.x,event.y);// 156.获得左边的对象 // 157.定位鼠标 document.all.hint_layer.style.left = event.x+document.body.scrollLeft+10; document.all.hint_layer.style.top = event.y+document.body.scrollTop+10;// 158.向下拉框指定位置添加项目 var op = document.createElement("OPTION"); document.all.selected_items.children(index).insertAdjacentElement("BeforeBegin",op); op.text = document.all.all_items.text; op.value = document.all.all_items.value;// 159.判断一个窗口是否已经打开,如果已经打开,则关闭之 var a; if(a) a.close(); else a=window.open('','','');// 160.动态创建一个标签 newElem = document.createElement("DIV"); newElem.id = "hint_layer"; document.body.appendChild(newElem); document.all.hint_layer.innerText="guoguo";// 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 ""; } // http://www.knowsky.com/ 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; } } } // 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、gb2312 Unicode unicode/Unicode UTF-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程序,如下结果为page1 s="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) 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)】菜单中的命令的实现 1、〖打开〗命令的实现 [格式]:document.execCommand("open") [说明]这跟VB等编程设计中的webbrowser控件中的命令有些相似,大家也可依此琢磨琢磨。 [举例]在之间加入: 打开 2、〖使用 记事本 编辑〗命令的实现 [格式]:location.replace("view-source:"+location) [说明]打开记事本,在记事本中显示该网页的源代码。 [举例]在之间加入: 使用 记事本编辑 3、〖另存为〗命令的实现 [格式]:document.execCommand("saveAs") [说明]将该网页保存到本地盘的其它目录! [举例]在之间加入: 另存为 4、〖打印〗命令的实现 [格式]:document.execCommand("print") [说明]当然,你必须装了打印机! [举例]在之间加入: 打印 5、〖关闭〗命令的实现 [格式]:window.close();return false [说明]将关闭本窗口。 [举例]在之间加入: 关闭本窗口 180.【编辑(E)】菜单中的命令的实现 〖全选〗命令的实现 [格式]:document.execCommand("selectAll") [说明]将选种网页中的全部内容! [举例]在之间加入: 全选 181.【查看(V)】菜单中的命令的实现 1、〖刷新〗命令的实现 [格式]:location.reload() 或 history.go(0) [说明]浏览器重新打开本页。 [举例]在之间加入: 刷新 或加入: 刷新 2、〖源文件〗命令的实现 [格式]:location.replace("view-source:"+location) [说明]查看该网页的源代码。 [举例]在之间加入: 查看源文件 3、〖全屏显示〗命令的实现 [格式]:window.open(document.location, "url", "fullscreen") [说明]全屏显示本页。 [举例]在之间加入: 全屏显示 182.【收藏(A)】菜单中的命令的实现 1、〖添加到收藏夹〗命令的实现 [格式]:window.external.AddFavorite('url', '“网站名”) [说明]将本页添加到收藏夹。 [举例]在之间加入: 添加到收 藏夹 2、〖整理收藏夹〗命令的实现 [格式]:window.external.showBrowserUI("OrganizeFavorites",null) [说明]打开整理收藏夹对话框。 [举例]在之间加入: 整理收藏夹 183.【工具(T)】菜单中的命令的实现 〖internet选项〗命令的实现 [格式]:window.external.showBrowserUI("PrivacySettings",null) [说明]打开internet选项对话框。 [举例]在之间加入: internet选项 184.【工具栏】中的命令的实现 1、〖前进〗命令的实现 [格式]history.go(1) 或 history.forward() [说明]浏览器打开后一个页面。 [举例]在之间加入: 前进 或加入: 前进 2、〖后退〗命令的实现 [格式]:history.go(-1) 或 history.back() [说明]浏览器返回上一个已浏览的页面。 [举例]在之间加入: 后退 或加入: 后退 3、〖刷新〗命令的实现 [格式]:document.reload() 或 history.go(0) [说明]浏览器重新打开本页。 [举例]在之间加入: 刷新 或加入: 刷新 185.其它命令的实现 〖定时关闭本窗口〗命令的实现 [格式]:settimeout(window.close(),关闭的时间) [说明]将关闭本窗口。 [举例]在之间加入: 3秒关闭本窗口 【附】为了方便读者,下面将列出所有实例代码,你可以把它们放到一个html文件中,然后预览效果。 打开 使用 记事本编辑 另存为 打印 关闭本窗口 全选 刷新 刷新 查看源文件 全屏显示 添加到收藏 夹 整理收藏夹 internet选项 前进1 前进2 后退1 后退2 3秒关闭本窗口 186.给DHTML中的标签添加一个新的属性,可以随意加 // 187.xmlhttp技术 此方法是通过XMLHTTP对象从服务器获取XML文档,示例如下。 // 201.将url转化为16进制形式 var ret = ''; for(var i=0; i < str.length; i++) { var ch = str.charAt(i); var code = str.charCodeAt(i); if(code < 128 && ch != '[' && ch != '/'' && ch != '=') { ret += ch; } else { ret += "[" + code.toString(16) + "]"; } } return ret;// 202.打开新的窗口并将新打开的窗口设置为活动窗口 var newWin=window.open("xxxx"); newWin.focus();// 203.容错脚本 JS中遇到脚本错误时不做任何操作:window.onerror = doNothing; 指定错误句柄的语法为:window.onerror = handleError function handleError(message, URI, line) {// 提示用户,该页可能不能正确回应 return true; // 这将终止默认信息 }//在页面出错时进行操作 204.JS中的窗口重定向: window.navigate("http://www.sina.com.cn");// 205.防止链接文字折行 document.body.noWrap=true;// 206.判断字符是否匹配. string.match(regExpression)// 207. href="javascript:document.Form.Name.value='test';void(0);"//不能用onClick="javacript:document.Form.Name.v alue='test';return false;" 当使用inline方式添加事件处理脚本事,有一个被包装成匿名函数的过程,也就是说 onClick="javacript:document.Form.Name.value='test';return false;"被包装成了: functoin anonymous() { document.Form.Name.value='test';return false; } 做为A的成员函数onclick。 而href="javascript:document.Form.Name.value='test';void(0);"相当于执行全局语句,这时如果使用return语句会 报告在函数外使用return语句的错误。 208.进行页面放大 sdsdsdsdsdsdsdsds // 209.放置在页面的最右边 // 210.通过style来控制隔行显示不同颜色 // 211.全屏最大化 newwindow=window.open("","","scrollbars") if (document.all) { newwindow.moveTo(0,0) newwindow.resizeTo(screen.width,screen.height) }// 212.根据名字解析xml中的节点值 var XMLDoc=new ActiveXObject("MSXML"); XMLDoc.url="d:/abc.xml"; aRoot=XMLDoc.root; a1.innerText=aRoot.children.item("name").text;// 213.在页面上解析xml的值 http://msdn.microsoft.com/library/default.asp?url=/library/en-us/xmlsdk/html/5996c682-3472-4b03-9fb0-1e08 fcccdf35.asp // 214.看一个字符串里面有多少个回车符,返回值是一个数组 var s=value.match(//n/g);if(s)if(s.length==9){alert('10行了');return false;}// 215.获得asc码 var s='aa'; alert(s.charCodeAt(1))// 216.文字居右对齐 // 217.判断一个方法是否存在 function pageCallback(response){ alert(response); } if(pageCallback) alert(1)// 218.判断一个变量是否定义 if(typeof(a)=="undefined") { alert() }// 219.javascript执行本机的可执行程序,需设置为可信或者降低IE安全级别 // 226.获得对象类型 switch (object.constructor){ case Date: ... case Number: ... case String: ... case MyObject: ... default: ... }// 227.图片加载失败时重新加载图片 // 228. //font_effect.htc //abc.css tr{behavior:url(font_effect.htc);} 229.可以通过css和htc改变表格的颜色,仅IE支持 //xxx.html 1 2 3 4 5 6 // 230.在页面上画点 function a(x,y,color) { document.write("") }// 231.自动关闭网页 本页10秒后自动关闭,请注意刷新页面 你可能感兴趣的:(前端开发) 【前端开发】能不能用Vue+Bootstrap进行项目开发?有什么需求场景需要用到的地方 爱上大树的小猪 vue.jsbootstrap前端 简介:Vue.jsVue.js(通常简称为Vue)是一个用于构建用户界面的渐进式JavaScript框架。它允许开发者创建高效的、交互式的单页面应用(SPA)。Vue的核心库专注于视图层,易于学习且集成到现有项目中,同时也能够为复杂的应用提供强大的功能支持。Vue通过组件化的方式让代码更加模块化、可重用和维护。BootstrapBootstrap是一个开源的CSS框架,旨在简化网页和Web应用的前 前端开发中的最佳实践与技巧 lina_mua javascriptvue.jshtml前端es6node.js 1.引言1.1前端开发的重要性在当今的互联网时代,前端开发已经成为构建用户友好、高效、安全的Web应用程序的关键。前端不仅仅是用户与应用程序交互的界面,它还直接影响用户体验、性能和安全性。1.2本文的目标本文旨在分享前端开发中的最佳实践与技巧,帮助开发者提高代码质量、优化性能、增强安全性,并掌握最新的前端技术趋势。2.HTML最佳实践2.1语义化标签的使用语义化HTML不仅有助于SEO,还能提高代 前端开发岗模拟面试题套卷A答案及解析(一)技术面部分 向贤 前端开发前端数据库javascript面试 前端开发岗模拟面试题套卷A答案及解析(一)技术面部分(一)技术面一、JavaScript核心技术(ES6+)1-1、实现防抖函数functiondebounce(fn,delay){lettimer=null;returnfunction(...args){clearTimeout(timer);//清除已有定时器timer=setTimeout(()=>{fn.apply(this,args); AI前端革新金融风控:ScriptEcho助力高效开发 wangtaohappy 人工智能前端 1.引言:金融风控的挑战与前端效率需求在当今快速变化的金融环境中,风险评估和反欺诈已成为金融机构运营的核心。金融风控不仅关乎企业的盈利能力,更直接影响着整个金融体系的稳定。一个强大的风控系统需要能够实时监控、分析并预测潜在的风险,从而保护企业和用户的资产安全。然而,构建和维护这样一套复杂的系统并非易事,尤其是在前端开发方面,面临着诸多挑战。传统的前端开发模式,依赖于人工编写大量的代码,这在快速迭代 星河飞雪网络安全学习笔记-安全见闻1-3 芝士布偶 网络安全 安全见闻-了解安全知识编程语言日常编程语言C语言:一种通用的、面向过程的编程语言,广泛运用于系统软件呵呵嵌入式开发C++:面向对象的编程语言,常用于游戏开发、高性能计算等领域Java:一种广泛使用的面向对象编程语言、具有跨平台性、应用于企业级应用开发等Python(萌新推荐):简洁易学,拥有丰富的库,适用于数据分析、人工智能、web开发等Javascript:主要用于网页前端开发,也可用于服务器端 鸿蒙5.0实战案例:基于原生能力的横竖屏旋转适配 敢嗣先锋 鸿蒙开发移动开发HarmonyOSharmonyos鸿蒙开发openharmony移动开发ArkUI 往期推文全新看点(文中附带全新鸿蒙5.0全栈学习笔录)✏️鸿蒙(HarmonyOS)北向开发知识点记录~✏️鸿蒙(OpenHarmony)南向开发保姆级知识点汇总~✏️鸿蒙应用开发与鸿蒙系统开发哪个更有前景?✏️嵌入式开发适不适合做鸿蒙南向开发?看完这篇你就了解了~✏️对于大前端开发来说,转鸿蒙开发究竟是福还是祸?✏️鸿蒙岗位需求突增!移动端、PC端、IoT到底该怎么选?✏️记录一场鸿蒙开发岗位面 React 中的受控组件与非受控组件:深度剖析与实战应用 银之夏雪丶 react.jsjavascript前端 一、引言在如今的前端开发里,React可是响当当的角色,是咱搭建用户界面的得力帮手。一碰到表单处理和用户输入交互这些事儿,受控组件和非受控组件就派上大用场了,它们就像是两种不一样的工具,各有各的厉害之处。要是咱能把它们摸透了,知道啥时候用啥,那开发出来的React应用肯定既好用又靠谱,用户体验也差不了。二、受控组件(一)定义咋来的受控组件,简单讲,就是让表单元素的值跟React组件的state绑得 JavaScript系列(86)--现代构建工具详解 ᅟᅠ 一进制 JavaScriptjavascriptrust开发语言 JavaScript现代构建工具详解现代前端开发离不开构建工具,它们帮助我们处理模块打包、代码转换、资源优化等任务。让我们深入了解主流的构建工具及其应用。构建工具概述小知识:构建工具主要解决代码转换、文件优化、模块打包、自动刷新、代码分割等问题。主流的构建工具包括webpack、Vite、Rollup等,它们各有特点和适用场景。webpack详解//1.webpack配置classWebpackC 前端开发必备:全方位字符串处理工具详解 FinkGO小码 vue.jsjavascripttypescript前端程序人生学习方法webstorm 前端开发必备:StringUtils全方位字符串处理工具详解引言在前端开发的日常工作中,字符串的处理无处不在。从用户输入的校验、界面文本的展示优化,到数据的格式化与传输,高效且精准地操作字符串是提升应用质量与用户体验的关键环节。今天,我们将深入剖析一款功能强大、涵盖广泛的字符串工具类——StringUtils,它如同一位万能的工匠,为开发者提供了一站式解决各类字符串问题的便捷方案。工具类概述Str AI 赋能前端开发:ScriptEcho 如何结合低代码/无代码平台引领未来 wangtaohappy 人工智能低代码前端 1.引言前端开发作为用户与应用交互的桥梁,一直面临着效率、复杂性和快速迭代的挑战。随着互联网技术的飞速发展,用户对应用的用户体验要求越来越高,前端开发的任务也变得更加繁重和复杂。与此同时,低代码/无代码平台的兴起为前端开发带来了新的可能性,它们通过可视化界面和预构建组件,大大降低了开发门槛,加速了开发流程。而AI写代码工具的出现,则进一步赋能了前端开发,为解决传统前端开发模式的痛点提供了新的思路。 AI写代码工具赋能前端开发:效率提升与身心健康 hzcaituowj 人工智能前端 在飞速发展的互联网时代,AI前端开发成为炙手可热的领域。然而,高强度的工作、紧迫的交付时间以及技术日新月异的更新迭代,也给开发者带来了巨大的压力,甚至严重影响着他们的身心健康。长时间伏案工作导致的颈椎病、眼疲劳、精神压力大等问题日益突出。本文将探讨如何利用先进的AI写代码工具提升工作效率,从而有效改善AI前端开发人员的身心健康状况。AI前端开发与身心健康:挑战与应对AI前端开发,特别是涉及到复杂交 广州游戏公司4399秋季招聘火热进行中可查询流程 huaxinjiayou java 新凯来入职体检被卡取消录用面试多起来了byd是真抽象啊,没笔没面直接录取了金蝶第二批组内直招前端开发实习生-最快可当天约面比亚迪两院不卡本2秋招暂时结束,学会和自己和解应届生基本都沦为各公司的免税工具了秋招不要焦虑,机会就在某一瞬间同程一面面试多起来了同程旅行java开发一面凉经byd是真抽象啊,没笔没面直接录取了同程旅行同程旅行一面数字马力(郑州)10/12面经同程一面写面经攒人品-数字马力后端 NVM管理多个 Nodejs 版本 牧云流 前端node.jsnvm 在前端开发过程中,常常需要切换不同版本的NodeJS运行环境,NVM(NodeVersionManager)是一个用于管理多个Node.js版本的工具。卸载以前的Nodejs,并删除node的安装目录安装nvm下载地址安装到D:\Programs\nvm,选择node安装路径D:\Programs\nodejsnvm-v安装指定的版本的nodejsnvminstall版本号nvminstall10 ScriptEcho:AI赋能的前端代码生成神器 begei 人工智能前端 ScriptEcho:AI赋能的前端代码生成神器在前端开发中,如果你总是觉得写代码太费时费力,那么ScriptEcho将成为你的救星。这个AI代码生成平台不仅能帮你省下大量时间,还能让你轻松愉快地写出生产级代码。本文将带你了解ScriptEcho的基本信息、特点,以及如何快速上手。软件简介ScriptEcho是一个专为前端开发者设计的AI代码生成平台,支持Vue、React、uniapp和Flut AI写代码工具赋能前端开发:提升开发者解决问题能力 bd_ming 人工智能前端 近年来,人工智能(AI)技术在各个领域都取得了显著进展,前端开发领域也不例外。AI的快速发展为前端开发者带来了前所未有的机遇,同时也带来了新的挑战。开发者需要不断学习新的技术和工具,以适应快速变化的开发环境。而AI写代码工具的出现,为开发者提升解决问题的能力提供了强有力的支持。本文将探讨AI前端开发工具如何帮助开发者更高效地解决问题,并以ScriptEcho为例进行说明。……传统的Web前端开发工 AI写代码工具赋能前端开发:ScriptEcho 如何激发创新? 2501_90335205 人工智能前端 近年来,人工智能技术飞速发展,深刻地改变着各个行业,前端开发领域也不例外。借助AI写代码工具,开发者们能够以前所未有的速度和效率构建复杂的应用程序,从而释放出更多的时间和精力专注于创新。本文将以ScriptEcho为例,深入探讨AI如何赋能前端开发,提升创新能力。……AI赋能前端创新:效率与创意的平衡传统的前端开发流程往往充满了重复性的工作,例如编写大量的样板代码、处理复杂的布局以及调试各种兼容性 前端主流构建工具 本文首发博客网站,由于图片和格式解析问题,可前往阅读原文随着前端开发复杂度的提升,构建工具在开发流程中扮演着越来越重要的角色。这些工具可以帮助开发者实现代码的打包、优化、转译、模块化处理等功能,从而提升开发效率和用户体验。本文将以当前主流的前端构建工具为核心,介绍它们的特点、适用场景及差异构建工具GruntGrunt是较早期的任务运行工具,主要通过任务(tasks)系统自动化完成前端开发的各种操作 Vue 开发效率翻倍:10 个 VS Code 插件助你成为编码高手! HelloZheQ vue.js前端javascript Vue.js作为前端开发的热门框架,其简洁的语法和强大的功能深受开发者喜爱。为了进一步提升Vue开发效率,VSCode提供了丰富的插件生态系统。今天,我就来分享10个我常用的VSCodeVue插件,它们能帮你告别重复劳动,专注于业务逻辑,让你成为真正的Vue编码高手!工欲善其事,必先利其器。选择合适的插件,能让你的Vue开发之旅事半功倍!核心插件:打造Vue开发的基石Vetur(byPineWu) 每日一道面试题(技术随机)什么是前端工程化?它有什么意义? 晚夜微雨问海棠呀 前端 前端工程化是一种系统化、规范化的前端开发方法论,通过整合工具链、制定标准流程和实施最佳实践,将软件工程思想应用于前端开发领域。其核心目标是提升开发效率、保障代码质量和增强可维护性。核心要素:模块化架构采用ESModules/CommonJS实现代码拆分组件化开发(如React/Vue组件体系)//ESModule示例import{utils}from'./core-module';exportde 前端开发书籍分享 returnShitBoy 前端javascriptcsshtml 为了方便前端开发者搜寻书籍,这期间一直在持续搜集各种前端书籍的电子版,从最初的几十本到后来的两百本,截至今天,一共搜集了330本前端书籍。在这里统一作一个整理,分享给前端开发者。电子书下载地址:链接:https://pan.baidu.com/s/1hTH5NpNhEy0hL0GMtYhLuQ?pwd=zhfi提取码11:zhfi百度网盘链接经常失效,如果失效了请加这个百度网盘群(72566927 鸿蒙5.0实战案例:基于webView的嵌套滚动 敢嗣先锋 鸿蒙开发移动开发HarmonyOSharmonyos鸿蒙开发移动开发ArkUI组件化WebViewWeb组件 往期推文全新看点(文中附带全新鸿蒙5.0全栈学习笔录)✏️鸿蒙(HarmonyOS)北向开发知识点记录~✏️鸿蒙(OpenHarmony)南向开发保姆级知识点汇总~✏️鸿蒙应用开发与鸿蒙系统开发哪个更有前景?✏️嵌入式开发适不适合做鸿蒙南向开发?看完这篇你就了解了~✏️对于大前端开发来说,转鸿蒙开发究竟是福还是祸?✏️鸿蒙岗位需求突增!移动端、PC端、IoT到底该怎么选?✏️记录一场鸿蒙开发岗位面 鸿蒙5.0实战案例:基于原生的水印添加能力 敢嗣先锋 移动开发鸿蒙开发HarmonyOSharmonyosc++鸿蒙开发ArkUI移动开发 往期推文全新看点(文中附带全新鸿蒙5.0全栈学习笔录)✏️鸿蒙(HarmonyOS)北向开发知识点记录~✏️鸿蒙(OpenHarmony)南向开发保姆级知识点汇总~✏️鸿蒙应用开发与鸿蒙系统开发哪个更有前景?✏️嵌入式开发适不适合做鸿蒙南向开发?看完这篇你就了解了~✏️对于大前端开发来说,转鸿蒙开发究竟是福还是祸?✏️鸿蒙岗位需求突增!移动端、PC端、IoT到底该怎么选?✏️记录一场鸿蒙开发岗位面 鸿蒙5.0实战案例:基于原生能力的深色模式适配 敢嗣先锋 鸿蒙开发移动开发HarmonyOSharmonyos组件化移动开发uiArkUI鸿蒙开发 往期推文全新看点(文中附带全新鸿蒙5.0全栈学习笔录)✏️鸿蒙(HarmonyOS)北向开发知识点记录~✏️鸿蒙(OpenHarmony)南向开发保姆级知识点汇总~✏️鸿蒙应用开发与鸿蒙系统开发哪个更有前景?✏️嵌入式开发适不适合做鸿蒙南向开发?看完这篇你就了解了~✏️对于大前端开发来说,转鸿蒙开发究竟是福还是祸?✏️鸿蒙岗位需求突增!移动端、PC端、IoT到底该怎么选?✏️记录一场鸿蒙开发岗位面 如何使用Python快速开发一个带管理系统界面的网站-解析方案 萧鼎 python基础到进阶教程python开发语言 如果你想用Python开发一个管理系统界面的网站,并且希望界面美观,可以考虑以下几个框架和库:1.Streamlit(快速、简洁)适合:数据分析、仪表盘、内部管理系统特点:写法简单,类似JupyterNotebook自带现代化UI,无需前端开发内置交互组件,如表单、图表、按钮缺点:不适合复杂的权限管理和大规模系统示例代码:importstreamlitasstst.title("管理系统")st. 2025:前端开发真的结束了吗,还是刚刚起步? @大迁世界 想象一下:你花了几年时间精通JavaScript、CSS,并与后端API亲密互动。然后有一天,你在LinkedIn上看到一条帖子写道:“前端开发死了!AI和无代码工具已经接管!”你的心跳一瞬间加速。是不是该换个职业了?或许去做个咖啡师?(至少咖啡的需求永远不会消失。)别急着慌张,我们先冷静分析一下。前端开发真的结束了吗,还是它仅仅在发生变化?接下来,我们来探讨一下这个话题。AI正在取代我们的工作随 Vue.js 组件开发:从基础到高级的实践与创新 全栈探索者chen vuevue.js前端javascript开发语言前端框架组件SFC Vue.js组件开发:从基础到高级的实践与创新前言在现代前端开发中,Vue.js因其易用性、灵活性和高效性而备受青睐,而组件化开发正是Vue框架的核心理念。无论你是初学者还是资深开发者,掌握组件开发技术都能大幅提升代码的复用性、可维护性和扩展性。本文将从Vue.js组件的基础概念、常见设计模式,到高级实践与创新思路,带你深入了解如何构建灵活、高质量的组件系统,并提供大量代码示例,助你打造出既美观又 【如何优化 JavaScript 代码的性能?】 程序员远仔 前端面试高频问题宝典javascript开发语言ecmascript前端edge浏览器前端框架 如何优化JavaScript代码的性能?前言JavaScript是Web开发的核心语言,优化JavaScript代码的性能对于提升用户体验和应用的响应速度至关重要。本文将重点从理论角度探讨优化JavaScript代码性能的多种策略和最佳实践,减少代码示例,增加理论分析。关键词JavaScript、性能优化、事件循环、内存管理、DOM操作、异步编程、代码分割、懒加载、缓存、前端开发、前端面试、前端基 微信小程序 python PHP java nodejs物业管理系统azs8s 豆包程序员 微信小程序pythonphp 文章目录本项目支持的技术栈具体实现截图开发技术介绍可定制亮点创新点->协同过滤算法进度安排及各阶段主要任务技术路线或研究方法可定制亮点创新点->普通算法推荐可定制亮点创新点->最短路线推荐算法可定制亮点创新点->标签算法java类核心代码部分展示参考文献源码获取/详细视频演示本项目支持的技术栈微信小程序前端开发:运用微信开发者工具,设计简洁美观、交互友好的界面。实现页面布局、组件设计、用户交互效果 2021中高级前端面试题合集,大厂内部资料 萌萌猫咪 程序员面试前端大前端 第一个阶段,开发环境和工具准备浏览器(Google,FireFox,…)下载,安装前端开发工具vscode,下载、安装node、npm、webpack、webpack-cli、cnpm,配置前端开发环境下载、配置PHP和MySQL第二个阶段,前端入门,网页制作1,HTML:常用标签(div标签,p标签,span标签,a标签,img标签)锚点列表标签(有序列表,无序列表,自定义列表)表单标签表格标签 Vue 2 vs. Vue 3:全面解析新一代框架的升级之处 HelloZheQ vue.js前端javascript Vue.js自发布以来,凭借其易用性、灵活性和高效性,迅速成为前端开发领域的热门选择。从Vue2到Vue3,不仅仅是版本号的简单递增,而是一次彻底的重构和升级。本文将深入探讨Vue3相对于Vue2的主要区别,帮助你更好地理解和选择适合自己的框架版本。1.性能优化:更快、更小、更强Vue3在性能方面进行了显著的优化,主要体现在以下几个方面:更快的渲染速度:Vue3使用了Proxy作为响应式系统的基础 [星球大战]阿纳金的背叛 comsci 本来杰迪圣殿的长老是不同意让阿纳金接受训练的......... 但是由于政治原因,长老会妥协了...这给邪恶的力量带来了机会 所以......现代的地球联邦接受了这个教训...绝对不让某些年轻人进入学院 看懂它,你就可以任性的玩耍了! aijuans JavaScript javascript作为前端开发的标配技能,如果不掌握好它的三大特点:1.原型 2.作用域 3. 闭包 ,又怎么可以说你学好了这门语言呢?如果标配的技能都没有撑握好,怎么可以任性的玩耍呢?怎么验证自己学好了以上三个基本点呢,我找到一段不错的代码,稍加改动,如果能够读懂它,那么你就可以任性了。 function jClass(b Java常用工具包 Jodd Kai_Ge javajodd Jodd 是一个开源的 Java 工具集, 包含一些实用的工具类和小型框架。简单,却很强大! 写道 Jodd = Tools + IoC + MVC + DB + AOP + TX + JSON + HTML < 1.5 Mb Jodd 被分成众多模块,按需选择,其中 工具类模块有: jodd-core &nb SpringMvc下载 120153216 springMVC @RequestMapping(value = WebUrlConstant.DOWNLOAD) public void download(HttpServletRequest request,HttpServletResponse response,String fileName) { OutputStream os = null; InputStream is = null; Python 标准异常总结 2002wmj python Python标准异常总结 AssertionError 断言语句(assert)失败 AttributeError 尝试访问未知的对象属性 EOFError 用户输入文件末尾标志EOF(Ctrl+d) FloatingPointError 浮点计算错误 GeneratorExit generator.close()方法被调用的时候 ImportError 导入模块失 SQL函数返回临时表结构的数据用于查询 357029540 SQL Server 这两天在做一个查询的SQL,这个SQL的一个条件是通过游标实现另外两张表查询出一个多条数据,这些数据都是INT类型,然后用IN条件进行查询,并且查询这两张表需要通过外部传入参数才能查询出所需数据,于是想到了用SQL函数返回值,并且也这样做了,由于是返回多条数据,所以把查询出来的INT类型值都拼接为了字符串,这时就遇到问题了,在查询SQL中因为条件是INT值,SQL函数的CAST和CONVERST都 java 时间格式化 | 比较大小| 时区 个人笔记 7454103 javaeclipsetomcatcMyEclipse 个人总结! 不当之处多多包含! 引用 1.0 如何设置 tomcat 的时区: 位置:(catalina.bat---JAVA_OPTS 下面加上) set JAVA_OPT 时间获取Clander的用法 adminjun Clander时间 /** * 得到几天前的时间 * @param d * @param day * @return */ public static Date getDateBefore(Date d,int day){ Calend JVM初探与设置 aijuans java JVM是Java Virtual Machine(Java虚拟机)的缩写,JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。Java虚拟机包括一套字节码指令集、一组寄存器、一个栈、一个垃圾回收堆和一个存储方法域。 JVM屏蔽了与具体操作系统平台相关的信息,使Java程序只需生成在Java虚拟机上运行的目标代码(字节码),就可以在多种平台 SQL中ON和WHERE的区别 avords SQL中ON和WHERE的区别 数据库在通过连接两张或多张表来返回记录时,都会生成一张中间的临时表,然后再将这张临时表返回给用户。 www.2cto.com 在使用left jion时,on和where条件的区别如下: 1、 on条件是在生成临时表时使用的条件,它不管on中的条件是否为真,都会返回左边表中的记录。 说说自信 houxinyou 工作生活 自信的来源分为两种,一种是源于实力,一种源于头脑.实力是一个综合的评定,有自身的能力,能利用的资源等.比如我想去月亮上,要身体素质过硬,还要有飞船等等一系列的东西.这些都属于实力的一部分.而头脑不同,只要你头脑够简单就可以了!同样要上月亮上,你想,我一跳,1米,我多跳几下,跳个几年,应该就到了!什么?你说我会往下掉?你笨呀你!找个东西踩一下不就行了吗? 无论工作还 WEBLOGIC事务超时设置 bijian1013 weblogicjta事务超时 系统中统计数据,由于调用统计过程,执行时间超过了weblogic设置的时间,提示如下错误: 统计数据出错! 原因:The transaction is no longer active - status: 'Rolling Back. [Reason=weblogic.transaction.internal 两年已过去,再看该如何快速融入新团队 bingyingao java互联网融入架构新团队 偶得的空闲,翻到了两年前的帖子 该如何快速融入一个新团队,有所感触,就记下来,为下一个两年后的今天做参考。 时隔两年半之后的今天,再来看当初的这个博客,别有一番滋味。而我已经于今年三月份离开了当初所在的团队,加入另外的一个项目组,2011年的这篇博客之后的时光,我很好的融入了那个团队,而直到现在和同事们关系都特别好。大家在短短一年半的时间离一起经历了一 【Spark七十七】Spark分析Nginx和Apache的access.log bit1129 apache Spark分析Nginx和Apache的access.log,第一个问题是要对Nginx和Apache的access.log文件进行按行解析,按行解析就的方法是正则表达式: Nginx的access.log解析正则表达式 val PATTERN = """([^ ]*) ([^ ]*) ([^ ]*) (\\[.*\\]) (\&q Erlang patch bookjovi erlang Totally five patchs committed to erlang otp, just small patchs. IMO, erlang really is a interesting programming language, I really like its concurrency feature. but the functional programming style log4j日志路径中加入日期 bro_feng javalog4j 要用log4j使用记录日志,日志路径有每日的日期,文件大小5M新增文件。 实现方式 log4j: <appender name="serviceLog" class="org.apache.log4j.RollingFileAppender"> <param name="Encoding" v 读《研磨设计模式》-代码笔记-桥接模式 bylijinnan java设计模式 声明: 本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客http://chjavach.iteye.com/ /** * 个人觉得关于桥接模式的例子,蜡笔和毛笔这个例子是最贴切的:http://www.cnblogs.com/zhenyulu/articles/67016.html * 笔和颜色是可分离的,蜡笔把两者耦合在一起了:一支蜡笔只有一种 windows7下SVN和Eclipse插件安装 chenyu19891124 eclipse插件 今天花了一天时间弄SVN和Eclipse插件的安装,今天弄好了。svn插件和Eclipse整合有两种方式,一种是直接下载插件包,二种是通过Eclipse在线更新。由于之前Eclipse版本和svn插件版本有差别,始终是没装上。最后在网上找到了适合的版本。所用的环境系统:windows7JDK:1.7svn插件包版本:1.8.16Eclipse:3.7.2工具下载地址:Eclipse下在地址:htt [转帖]工作流引擎设计思路 comsci 设计模式工作应用服务器workflow企业应用 作为国内的同行,我非常希望在流程设计方面和大家交流,刚发现篇好文(那么好的文章,现在才发现,可惜),关于流程设计的一些原理,个人觉得本文站得高,看得远,比俺的文章有深度,转载如下 ================================================================================= 自开博以来不断有朋友来探讨工作流引擎该如何 Linux 查看内存,CPU及硬盘大小的方法 daizj linuxcpu内存硬盘大小 一、查看CPU信息的命令 [root@R4 ~]# cat /proc/cpuinfo |grep "model name" && cat /proc/cpuinfo |grep "physical id" model name : Intel(R) Xeon(R) CPU X5450 @ 3.00GHz model name : linux 踢出在线用户 dongwei_6688 linux 两个步骤: 1.用w命令找到要踢出的用户,比如下面: [root@localhost ~]# w 18:16:55 up 39 days, 8:27, 3 users, load average: 0.03, 0.03, 0.00 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT 放手吧,就像不曾拥有过一样 dcj3sjt126com 内容提要: 静悠悠编著的《放手吧就像不曾拥有过一样》集结“全球华语世界最舒缓心灵”的精华故事,触碰生命最深层次的感动,献给全世界亿万读者。《放手吧就像不曾拥有过一样》的作者衷心地祝愿每一位读者都给自己一个重新出发的理由,将那些令你痛苦的、扛起的、背负的,一并都放下吧!把憔悴的面容换做一种清淡的微笑,把沉重的步伐调节成春天五线谱上的音符,让自己踏着轻快的节奏,在人生的海面上悠然漂荡,享受宁静与 php二进制安全的含义 dcj3sjt126com PHP PHP里,有string的概念。 string里,每个字符的大小为byte(与PHP相比,Java的每个字符为Character,是UTF8字符,C语言的每个字符可以在编译时选择)。 byte里,有ASCII代码的字符,例如ABC,123,abc,也有一些特殊字符,例如回车,退格之类的。 特殊字符很多是不能显示的。或者说,他们的显示方式没有标准,例如编码65到哪儿都是字母A,编码97到哪儿都是字符 Linux下禁用T440s,X240的一体化触摸板(touchpad) gashero linuxThinkPad触摸板 自打1月买了Thinkpad T440s就一直很火大,其中最让人恼火的莫过于触摸板。 Thinkpad的经典就包括用了小红点(TrackPoint)。但是小红点只能定位,还是需要鼠标的左右键的。但是自打T440s等开始启用了一体化触摸板,不再有实体的按键了。问题是要是好用也行。 实际使用中,触摸板一堆问题,比如定位有抖动,以及按键时会有飘逸。这就导致了单击经常就 graph_dfs hcx2013 Graph package edu.xidian.graph; class MyStack { private final int SIZE = 20; private int[] st; private int top; public MyStack() { st = new int[SIZE]; top = -1; } public void push(i Spring4.1新特性——Spring核心部分及其他 jinnianshilongnian spring 4.1 目录 Spring4.1新特性——综述 Spring4.1新特性——Spring核心部分及其他 Spring4.1新特性——Spring缓存框架增强 Spring4.1新特性——异步调用和事件机制的异常处理 Spring4.1新特性——数据库集成测试脚本初始化 Spring4.1新特性——Spring MVC增强 Spring4.1新特性——页面自动化测试框架Spring MVC T 配置HiveServer2的安全策略之自定义用户名密码验证 liyonghui160com 具体从网上看 http://doc.mapr.com/display/MapR/Using+HiveServer2#UsingHiveServer2-ConfiguringCustomAuthentication LDAP Authentication using OpenLDAP Setting 一位30多的程序员生涯经验总结 pda158 编程工作生活咨询 1.客户在接触到产品之后,才会真正明白自己的需求。 这是我在我的第一份工作上面学来的。只有当我们给客户展示产品的时候,他们才会意识到哪些是必须的。给出一个功能性原型设计远远比一张长长的文字表格要好。 2.只要有充足的时间,所有安全防御系统都将失败。 安全防御现如今是全世界都在关注的大课题、大挑战。我们必须时时刻刻积极完善它,因为黑客只要有一次成功,就可以彻底打败你。 3. 分布式web服务架构的演变 自由的奴隶 linuxWeb应用服务器互联网 最开始,由于某些想法,于是在互联网上搭建了一个网站,这个时候甚至有可能主机都是租借的,但由于这篇文章我们只关注架构的演变历程,因此就假设这个时候已经是托管了一台主机,并且有一定的带宽了,这个时候由于网站具备了一定的特色,吸引了部分人访问,逐渐你发现系统的压力越来越高,响应速度越来越慢,而这个时候比较明显的是数据库和应用互相影响,应用出问题了,数据库也很容易出现问题,而数据库出问题的时候,应用也容易 初探Druid连接池之二——慢SQL日志记录 xingsan_zhang 日志连接池druid慢SQL 由于工作原因,这里先不说连接数据库部分的配置,后面会补上,直接进入慢SQL日志记录。 1.applicationContext.xml中增加如下配置: <bean abstract="true" id="mysql_database" class="com.alibaba.druid.pool.DruidDataSourc 按字母分类: ABCDEFGHIJKLMNOPQRSTUVWXYZ其他
// 77.获得当前的文本框选中的文字 // 78.跳转至目标页面,同时不可返回 sohu.com// 79.获得当前的行是表格的第几行
132.判断是什么对象 if(typeof(unknown)=="function")return true; if(typeof(unknown)!="object")return false;// 133.取消文本框自动完成功能 // 134.让下拉框自动下拉 1 2 3 // 135.读取XML文件 var childrenobj=myselect//document.all.myselect; var oXMLDoc = new ActiveXObject('MSXML'); oXMLDoc.url = "mymsg.xml"; var oRoot=oXMLDoc.root; if(oRoot.children != null) { for(var i=0;i 杭州地区 温州地区 台州地区 丽水地区 // 136.点击图片,图片停止 // 137.显示本地计算机信息 var WshNetwork = new ActiveXObject("WScript.Network"); alert("Domain = " + WshNetwork.UserDomain); alert("Computer Name = " + WshNetwork.ComputerName); alert("User Name = " + WshNetwork.UserName);// 138.比较时间 tDate = new Date(2004,01,08,14,35); //年,月,日,时,分 dDate = new Date(); tDatedddd// 140.注意不能通过与 undefined 做比较来测试一个变量是否存在,虽然可以检查它的类型是否为“undefined”。在以 下的代码范例中,假设程序员想测试是否已经声明变量 x : // 这种方法不起作用 if (x == undefined) // 作某些操作 // 这个方法同样不起作用- 必须检查 // 字符串 "undefined" if (typeof(x) == undefined) // 作某些操作 // 这个方法有效 if (typeof(x) == "undefined") // 作某些操作 141.创建具有某些属性的对象 var myObject = new Object(); myObject.name = "James"; myObject.age = "22"; myObject.phone = "555 1234";// 142.枚举(循环)对象的所有属性 for (var a in myObject) { // 显示 "The property 'name' is James",等等。 window.alert("The property '" + a + "' is " + myObject[a]); }// 143.判断一个数字是否是整数 var a=23.2; alert(a%1==1)// 144.新建日期型变量 var a = new Date(2000, 1, 1); alert(a.toLocaleDateString()); 145.给类定义新的方法 function trim_1() { return this.replace(/(^/s*)|(/s*$)/g, ""); } String.prototype.trim=trim_1; alert('cindy'.trim()); 146.定义一个将日期类型转化为字符串的方法 function guoguo_date() { var tmp1,tmp2; tmp1 =this.getMonth()+1+""; if(tmp1.length<2) tmp1="0"+tmp1; tmp2 =this.getDate()+""; if(tmp2.length<2) tmp2="0"+tmp2; return this.getYear()+"-"+tmp1+"-"+tmp2; } Date.prototype.toLiteString=guoguo_date; alert(new Date().toLiteString()) 147. pasta 是有四个参数的构造器,定义对象。 function pasta(grain, width, shape, hasEgg) { // 是用什么粮食做的? this.grain = grain; // 多宽?(数值) this.width = width; // 横截面形状?(字符串) this.shape = shape; // 是否加蛋黄?(boolean) this.hasEgg = hasEgg; //定义方法 this.toString=aa; } function aa() { ; } //定义了对象构造器后,用 new 运算符创建对象实例。 var spaghetti = new pasta("wheat", 0.2, "circle", true); var linguine = new pasta("wheat", 0.3, "oval", true); //补充定义属性,spaghetti和linguine都将自动获得新的属性 pasta.prototype.foodgroup = "carbohydrates"; 148.打印出错误原因 try { x = y // 产生错误。 } catch(e) { document.write(e.description) //打印 "'y' is undefined". }// 149.生成Excel文件并保存 var ExcelSheet; ExcelApp = new ActiveXObject("Excel.Application"); ExcelSheet = new ActiveXObject("Excel.Sheet"); //本代码启动创建对象的应用程序(在这种情况下,Microsoft Excel 工作表)。一旦对象被创建,就可以用定义的对 象变量在代码中引用它。 在下面的例子中,通过对象变量 ExcelSheet 访问新对象的属性和方法和其他 Excel 对象, 包括 Application 对象和 ActiveSheet.Cells 集合。 // 使 Excel 通过 Application 对象可见。 ExcelSheet.Application.Visible = true; // 将一些文本放置到表格的第一格中。 ExcelSheet.ActiveSheet.Cells(1,1).Value = "This is column A, row 1"; // 保存表格。 ExcelSheet.SaveAs("C://TEST.XLS"); // 用 Application 对象用 Quit 方法关闭 Excel。 ExcelSheet.Application.Quit();// 150.根据标签获得一组对象 var coll = document.all.tags("DIV"); if (coll!=null) { for (i=0; i // 152.不通过form,直接通过名字引用对象 // 153.使鼠标滚轮失效 function document.onmousewheel() { return false; }// 154.创建弹出窗口 // 155.取得鼠标所在处的对象 var obj = document.elementFromPoint(event.x,event.y);// 156.获得左边的对象 // 157.定位鼠标 document.all.hint_layer.style.left = event.x+document.body.scrollLeft+10; document.all.hint_layer.style.top = event.y+document.body.scrollTop+10;// 158.向下拉框指定位置添加项目 var op = document.createElement("OPTION"); document.all.selected_items.children(index).insertAdjacentElement("BeforeBegin",op); op.text = document.all.all_items.text; op.value = document.all.all_items.value;// 159.判断一个窗口是否已经打开,如果已经打开,则关闭之 var a; if(a) a.close(); else a=window.open('','','');// 160.动态创建一个标签 newElem = document.createElement("DIV"); newElem.id = "hint_layer"; document.body.appendChild(newElem); document.all.hint_layer.innerText="guoguo";// 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 ""; } // http://www.knowsky.com/ 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; } } } // 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、gb2312 Unicode unicode/Unicode UTF-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程序,如下结果为page1 s="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) 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)】菜单中的命令的实现 1、〖打开〗命令的实现 [格式]:document.execCommand("open") [说明]这跟VB等编程设计中的webbrowser控件中的命令有些相似,大家也可依此琢磨琢磨。 [举例]在之间加入: 打开 2、〖使用 记事本 编辑〗命令的实现 [格式]:location.replace("view-source:"+location) [说明]打开记事本,在记事本中显示该网页的源代码。 [举例]在之间加入: 使用 记事本编辑 3、〖另存为〗命令的实现 [格式]:document.execCommand("saveAs") [说明]将该网页保存到本地盘的其它目录! [举例]在之间加入: 另存为 4、〖打印〗命令的实现 [格式]:document.execCommand("print") [说明]当然,你必须装了打印机! [举例]在之间加入: 打印 5、〖关闭〗命令的实现 [格式]:window.close();return false [说明]将关闭本窗口。 [举例]在之间加入: 关闭本窗口 180.【编辑(E)】菜单中的命令的实现 〖全选〗命令的实现 [格式]:document.execCommand("selectAll") [说明]将选种网页中的全部内容! [举例]在之间加入: 全选 181.【查看(V)】菜单中的命令的实现 1、〖刷新〗命令的实现 [格式]:location.reload() 或 history.go(0) [说明]浏览器重新打开本页。 [举例]在之间加入: 刷新 或加入: 刷新 2、〖源文件〗命令的实现 [格式]:location.replace("view-source:"+location) [说明]查看该网页的源代码。 [举例]在之间加入: 查看源文件 3、〖全屏显示〗命令的实现 [格式]:window.open(document.location, "url", "fullscreen") [说明]全屏显示本页。 [举例]在之间加入: 全屏显示 182.【收藏(A)】菜单中的命令的实现 1、〖添加到收藏夹〗命令的实现 [格式]:window.external.AddFavorite('url', '“网站名”) [说明]将本页添加到收藏夹。 [举例]在之间加入: 添加到收 藏夹 2、〖整理收藏夹〗命令的实现 [格式]:window.external.showBrowserUI("OrganizeFavorites",null) [说明]打开整理收藏夹对话框。 [举例]在之间加入: 整理收藏夹 183.【工具(T)】菜单中的命令的实现 〖internet选项〗命令的实现 [格式]:window.external.showBrowserUI("PrivacySettings",null) [说明]打开internet选项对话框。 [举例]在之间加入: internet选项 184.【工具栏】中的命令的实现 1、〖前进〗命令的实现 [格式]history.go(1) 或 history.forward() [说明]浏览器打开后一个页面。 [举例]在之间加入: 前进 或加入: 前进 2、〖后退〗命令的实现 [格式]:history.go(-1) 或 history.back() [说明]浏览器返回上一个已浏览的页面。 [举例]在之间加入: 后退 或加入: 后退 3、〖刷新〗命令的实现 [格式]:document.reload() 或 history.go(0) [说明]浏览器重新打开本页。 [举例]在之间加入: 刷新 或加入: 刷新 185.其它命令的实现 〖定时关闭本窗口〗命令的实现 [格式]:settimeout(window.close(),关闭的时间) [说明]将关闭本窗口。 [举例]在之间加入: 3秒关闭本窗口 【附】为了方便读者,下面将列出所有实例代码,你可以把它们放到一个html文件中,然后预览效果。 打开 使用 记事本编辑 另存为 打印 关闭本窗口 全选 刷新 刷新 查看源文件 全屏显示 添加到收藏 夹 整理收藏夹 internet选项 前进1 前进2 后退1 后退2 3秒关闭本窗口 186.给DHTML中的标签添加一个新的属性,可以随意加 // 187.xmlhttp技术 此方法是通过XMLHTTP对象从服务器获取XML文档,示例如下。 // 201.将url转化为16进制形式 var ret = ''; for(var i=0; i < str.length; i++) { var ch = str.charAt(i); var code = str.charCodeAt(i); if(code < 128 && ch != '[' && ch != '/'' && ch != '=') { ret += ch; } else { ret += "[" + code.toString(16) + "]"; } } return ret;// 202.打开新的窗口并将新打开的窗口设置为活动窗口 var newWin=window.open("xxxx"); newWin.focus();// 203.容错脚本 JS中遇到脚本错误时不做任何操作:window.onerror = doNothing; 指定错误句柄的语法为:window.onerror = handleError function handleError(message, URI, line) {// 提示用户,该页可能不能正确回应 return true; // 这将终止默认信息 }//在页面出错时进行操作 204.JS中的窗口重定向: window.navigate("http://www.sina.com.cn");// 205.防止链接文字折行 document.body.noWrap=true;// 206.判断字符是否匹配. string.match(regExpression)// 207. href="javascript:document.Form.Name.value='test';void(0);"//不能用onClick="javacript:document.Form.Name.v alue='test';return false;" 当使用inline方式添加事件处理脚本事,有一个被包装成匿名函数的过程,也就是说 onClick="javacript:document.Form.Name.value='test';return false;"被包装成了: functoin anonymous() { document.Form.Name.value='test';return false; } 做为A的成员函数onclick。 而href="javascript:document.Form.Name.value='test';void(0);"相当于执行全局语句,这时如果使用return语句会 报告在函数外使用return语句的错误。 208.进行页面放大 sdsdsdsdsdsdsdsds // 209.放置在页面的最右边 // 210.通过style来控制隔行显示不同颜色 // 211.全屏最大化 newwindow=window.open("","","scrollbars") if (document.all) { newwindow.moveTo(0,0) newwindow.resizeTo(screen.width,screen.height) }// 212.根据名字解析xml中的节点值 var XMLDoc=new ActiveXObject("MSXML"); XMLDoc.url="d:/abc.xml"; aRoot=XMLDoc.root; a1.innerText=aRoot.children.item("name").text;// 213.在页面上解析xml的值 http://msdn.microsoft.com/library/default.asp?url=/library/en-us/xmlsdk/html/5996c682-3472-4b03-9fb0-1e08 fcccdf35.asp // 214.看一个字符串里面有多少个回车符,返回值是一个数组 var s=value.match(//n/g);if(s)if(s.length==9){alert('10行了');return false;}// 215.获得asc码 var s='aa'; alert(s.charCodeAt(1))// 216.文字居右对齐 // 217.判断一个方法是否存在 function pageCallback(response){ alert(response); } if(pageCallback) alert(1)// 218.判断一个变量是否定义 if(typeof(a)=="undefined") { alert() }// 219.javascript执行本机的可执行程序,需设置为可信或者降低IE安全级别 // 226.获得对象类型 switch (object.constructor){ case Date: ... case Number: ... case String: ... case MyObject: ... default: ... }// 227.图片加载失败时重新加载图片 // 228. //font_effect.htc //abc.css tr{behavior:url(font_effect.htc);} 229.可以通过css和htc改变表格的颜色,仅IE支持 //xxx.html 1 2 3 4 5 6 // 230.在页面上画点 function a(x,y,color) { document.write("") }// 231.自动关闭网页 本页10秒后自动关闭,请注意刷新页面
sdsdsdsdsdsdsdsds
本页10秒后自动关闭,请注意刷新页面