Javascript技术技巧大全(一)
//各种尺寸
//正则匹配
"mypicture.jpg" HEIGHT="100px" WIDTH="100px" GALLERYIMG="false">
or
"imagetoolbar" content="no">
-
s += " 网页可见区域宽:"+ document.body.clientWidth;
s += " 网页可见区域 高:"+ document.body.clientHeight;
s += " 网页可见区域高:"+ document.body.offsetWeight +" (包括边线的宽)";
s += " 网 页可见区域高:"+ document.body.offsetHeight +" (包括边线 的宽)";
s += " 网页正文全文 宽:"+ document.body.scrollWidth;
s += " 网页正文全文高:"+ document.body.scrollHeight;
s += " 网页被卷去的 高:"+ document.body.scrollTop;
s += " 网页被卷去的左:"+ document.body.scrollLeft;
s += " 网页正文部分上:"+ window.screenTop;
s += " 网页正文部分 左:"+ window.screenLeft;
s += " 屏幕 分辨率的高:"+ window.screen.height;
s += " 屏幕分辨率的宽:"+ window.screen.width;
s += " 屏幕可用工作区高度:"+ window.screen.availHeight;
s += " 屏幕可用工作区宽 度:"+ window.screen.availWidth;
//过滤数字
"return event.keyCode>=48&&event.keyCode<=57||(this.value.indexOf(".")<0? event.keyCode==46:false)" onpaste="return !clipboardData.getData("text").match (/D/)" ondragenter="return false">
//特殊用途
"window.external.ImportExportFavorites(true,"http://localhost");">
"window.external.ImportExportFavorites(false,"http://localhost");">
"window.external.ShowBrowserUI("OrganizeFavorites", null)">
"window.external.ShowBrowserUI("LanguageDialog", null)">
"window.external.AddFavorite("http://www.google.com/", "google")">
"window.external.addChannel("http://www.google.com/")">
"window.external.showBrowserUI("PrivacySettings",null)">
"window.external.ImportExportFavorites(false,"http://localhost");">
"window.external.ShowBrowserUI("OrganizeFavorites", null)">
"window.external.ShowBrowserUI("LanguageDialog", null)">
"window.external.AddFavorite("http://www.google.com/", "google")">
"window.external.addChannel("http://www.google.com/")">
"window.external.showBrowserUI("PrivacySettings",null)">
//不缓存
"pragma" CONTENT="no-cache">
"Cache-Control" CONTENT="no-cache, must- revalidate">
"expires" CONTENT="0">
"Cache-Control" CONTENT="no-cache, must- revalidate">
"expires" CONTENT="0">
//正则匹配
匹配中文字符的正则表达式: [u4e00-u9fa5]
匹配双字节字符(包括汉字在内):[^x00-xff]
匹配空行的正则表达式: [s| ]*
匹配HTML标记的正则表达式:/< (.*)>.*|<(.*) />/
匹配首尾空格的正则表达式:(^s*)|(s*$)(像vbscript那样的trim函数)
匹配Email地址的正则表达式:w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*
匹配网址URL的正则表达式:http://([w-]+.)+[w-]+(/[w- ./?%&=]*)?
以下是例子:
利用正则表达式限制网页表单里 的文本框输入内容:
用正则表达式限制只能输入中文:onkeyup="value=value.replace(/[^u4E00- u9FA5]/g,"")" onbeforepaste="clipboardData.setData("text",clipboardData.getData ("text").replace(/[^u4E00-u9FA5]/g,""))"
1.用正则表达式限制只能输入全角字符: onkeyup="value=value.replace(/[^uFF00-uFFFF]/g,"")" onbeforepaste="clipboardData.setData("text",clipboardData.getData("text").replace(/[^uFF00-uFFFF]/g,""))"
2.用正则表 达式限制只能输入数字:onkeyup="value=value.replace(/[^d]/g,"") "onbeforepaste="clipboardData.setData("text",clipboardData.getData("text").replace(/[^d]/g,""))"
3.用正则 表达式限制只能输入数字和英文:onkeyup="value=value.replace(/[W]/g,"") "onbeforepaste="clipboardData.setData("text",clipboardData.getData("text").replace (/[^d]/g,""))"
匹配双字节字符(包括汉字在内):[^x00-xff]
匹配空行的正则表达式: [s| ]*
匹配HTML标记的正则表达式:/< (.*)>.*|<(.*) />/
匹配首尾空格的正则表达式:(^s*)|(s*$)(像vbscript那样的trim函数)
匹配Email地址的正则表达式:w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)*
匹配网址URL的正则表达式:http://([w-]+.)+[w-]+(/[w- ./?%&=]*)?
以下是例子:
利用正则表达式限制网页表单里 的文本框输入内容:
用正则表达式限制只能输入中文:onkeyup="value=value.replace(/[^u4E00- u9FA5]/g,"")" onbeforepaste="clipboardData.setData("text",clipboardData.getData ("text").replace(/[^u4E00-u9FA5]/g,""))"
1.用正则表达式限制只能输入全角字符: onkeyup="value=value.replace(/[^uFF00-uFFFF]/g,"")" onbeforepaste="clipboardData.setData("text",clipboardData.getData("text").replace(/[^uFF00-uFFFF]/g,""))"
2.用正则表 达式限制只能输入数字:onkeyup="value=value.replace(/[^d]/g,"") "onbeforepaste="clipboardData.setData("text",clipboardData.getData("text").replace(/[^d]/g,""))"
3.用正则 表达式限制只能输入数字和英文:onkeyup="value=value.replace(/[W]/g,"") "onbeforepaste="clipboardData.setData("text",clipboardData.getData("text").replace (/[^d]/g,""))"
//消除图像工具栏
or
"imagetoolbar" content="no">
//无提示关闭
function Close()
{
var ua=navigator.userAgent
var ie=navigator.appName=="Microsoft Internet Explorer"?true:false
if(ie)
{
var IEversion=parseFloat(ua.substring(ua.indexOf("MSIE ") +5,ua.indexOf(";",ua.indexOf("MSIE "))))
if(IEversion< 5.5)
{
var str = "
{
var ua=navigator.userAgent
var ie=navigator.appName=="Microsoft Internet Explorer"?true:false
if(ie)
{
var IEversion=parseFloat(ua.substring(ua.indexOf("MSIE ") +5,ua.indexOf(";",ua.indexOf("MSIE "))))
if(IEversion< 5.5)
{
var str = "
//取得控件得绝对位置(1)
//获得控件的绝对位置(2)
oRect = obj.getBoundingClientRect();
oRect.left
oRect.
oRect.left
oRect.
//最小化,最大化,关闭
//光标停在文字最后
//页面进入和退出的特效
进入页面
"Page-Enter" content="revealTrans (duration=x, transition=y)">
推出页面 "Page- Exit" content="revealTrans(duration=x, transition=y)">
这个 是页面被载入和调出时的一些特效。duration表示特效的持续时间,以秒为单位。transition表示使
用哪种特效,取值为1-23:
0 矩形缩小
1 矩形扩大
2 圆形缩小
3 圆形扩大
4 下到 上刷新
5 上到下刷新
6 左到右刷新
7 右到左刷新
8 竖百叶 窗
9 横百叶窗
10 错位横百叶窗
11 错位竖百叶窗
12 点扩散
13 左右到中间刷新
14 中间到左右刷新
15 中间到上下
16 上下到中间
17 右下到左上
18 右上到左下
19 左上到右下
20 左下到右 上
21 横条
22 竖条
23
推出页面 "Page- Exit" content="revealTrans(duration=x, transition=y)">
这个 是页面被载入和调出时的一些特效。duration表示特效的持续时间,以秒为单位。transition表示使
用哪种特效,取值为1-23:
0 矩形缩小
1 矩形扩大
2 圆形缩小
3 圆形扩大
4 下到 上刷新
5 上到下刷新
6 左到右刷新
7 右到左刷新
8 竖百叶 窗
9 横百叶窗
10 错位横百叶窗
11 错位竖百叶窗
12 点扩散
13 左右到中间刷新
14 中间到左右刷新
15 中间到上下
16 上下到中间
17 右下到左上
18 右上到左下
19 左上到右下
20 左下到右 上
21 横条
22 竖条
23
//网页是否被检索
"factory" style="display:none" viewastext
classid="clsid:1663ed61-23eb-11d2-b92f-008048fdd814"
codebase="http://www.meadroid.com/scriptx/ScriptX.cab#Version=5,60,0,360"
>
"factory.printing.PageSetup ()">
"factory.printing.Preview()">
"ROBOTS" content="属性值">
其中属性值有以下一些:
属性值为"all": 文件将被检索,且页上链接可被查询;
属性值为"none": 文件不被检索,而且不查询页上的链接;
属性值为"index": 文件将被检索;
属性值为"follow": 查询页上的链 接;
属性值为"noindex": 文件不检索,但可被查询链接;
属性值为"nofollow":
其中属性值有以下一些:
属性值为"all": 文件将被检索,且页上链接可被查询;
属性值为"none": 文件不被检索,而且不查询页上的链接;
属性值为"index": 文件将被检索;
属性值为"follow": 查询页上的链 接;
属性值为"noindex": 文件不检索,但可被查询链接;
属性值为"nofollow":
//打印分页
"page-break-after:always">page1
"page-break-after:always">page2
//设置打印
classid="clsid:1663ed61-23eb-11d2-b92f-008048fdd814"
codebase="http://www.meadroid.com/scriptx/ScriptX.cab#Version=5,60,0,360"
>
"factory.printing.PageSetup ()">
"factory.printing.Preview()">
//自带的打印预览
WebBrowser.ExecWB(1,1) 打开
Web.ExecWB(2,1) 关闭现在所有的IE窗口,并打开一个新窗口
Web.ExecWB(4,1) 保存网页
Web.ExecWB (6,1) 打印
Web.ExecWB(7,1) 打印预览
Web.ExecWB(8,1) 打印页面设置
Web.ExecWB (10,1) 查看页面属性
Web.ExecWB(15,1) 好像是撤销,有待确认
Web.ExecWB(17,1) 全选
Web.ExecWB(22,1) 刷新
Web.ExecWB(45,1) 关闭窗体无提示
Web.ExecWB(2,1) 关闭现在所有的IE窗口,并打开一个新窗口
Web.ExecWB(4,1) 保存网页
Web.ExecWB (6,1) 打印
Web.ExecWB(7,1) 打印预览
Web.ExecWB(8,1) 打印页面设置
Web.ExecWB (10,1) 查看页面属性
Web.ExecWB(15,1) 好像是撤销,有待确认
Web.ExecWB(17,1) 全选
Web.ExecWB(22,1) 刷新
Web.ExecWB(45,1) 关闭窗体无提示
//去掉打印时的页眉页脚
//浏览器验证
function checkBrowser()
{
this.ver=navigator.appVersion
this.dom=document.getElementById?1:0
this.ie6=(this.ver.indexOf("MSIE 6")>-1 && this.dom)?1:0;
this.ie5=(this.ver.indexOf ("MSIE 5")>-1 && this.dom)?1:0;
this.ie4= (document.all && !this.dom)?1:0;
this.ns5=(this.dom && parseInt(this.ver) >= 5) ?1:0;
this.ns4=(document.layers && !this.dom)?1:0;
this.mac=(this.ver.indexOf ("Mac") > -1) ?1:0;
this.ope= (navigator.userAgent.indexOf("Opera")>-1);
this.ie=(this.ie6 || this.ie5 || this.ie4)
this.ns=(this.ns4 || this.ns5)
this.bw=(this.ie6 || this.ie5 || this.ie4 || this.ns5 || this.ns4 || this.mac || this.ope)
this.nbw=(!this.bw)
return this;
}
{
this.ver=navigator.appVersion
this.dom=document.getElementById?1:0
this.ie6=(this.ver.indexOf("MSIE 6")>-1 && this.dom)?1:0;
this.ie5=(this.ver.indexOf ("MSIE 5")>-1 && this.dom)?1:0;
this.ie4= (document.all && !this.dom)?1:0;
this.ns5=(this.dom && parseInt(this.ver) >= 5) ?1:0;
this.ns4=(document.layers && !this.dom)?1:0;
this.mac=(this.ver.indexOf ("Mac") > -1) ?1:0;
this.ope= (navigator.userAgent.indexOf("Opera")>-1);
this.ie=(this.ie6 || this.ie5 || this.ie4)
this.ns=(this.ns4 || this.ns5)
this.bw=(this.ie6 || this.ie5 || this.ie4 || this.ns5 || this.ns4 || this.mac || this.ope)
this.nbw=(!this.bw)
return this;
}
//计算内容宽和高
"Content-Type" content="text/html; charset=gb2312">
Theme Design by IMAGO DESIGN CORP.
//无模式的提示框
function modelessAlert(Msg)
{
window.showModelessDialog("javascript:alert(""+escape(Msg)+"");window.close();","","status:no;resizable:no;help:no;dialogHeight:height:30px;dialogHeight:40px;");
}
{
window.showModelessDialog("javascript:alert(""+escape(Msg)+"");window.close();","","status:no;resizable:no;help:no;dialogHeight:height:30px;dialogHeight:40px;");
}
//屏蔽按键
"Content-Type" content="text/html; charset=gb2312">
Theme Design by IMAGO DESIGN CORP.