Javascript 小技巧全集_JavaScriptMay 16, 2016 pm 07:29 PM
javascript

事件源对象 
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.onmousedown=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") 
javascript: 
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对":"、"/"、";" 和 "?"也编码 
表格行指示 
 


//各种尺寸

s  +=  "\r\n网页可见区域宽:"+  document.body.clientWidth;  
s  +=  "\r\n网页可见区域高:"+  document.body.clientHeight;  
s  +=  "\r\n网页可见区域高:"+  document.body.offsetWeight  +"  (包括边线的宽)";  
s  +=  "\r\n网页可见区域高:"+  document.body.offsetHeight  +"  (包括边线的宽)";  
s  +=  "\r\n网页正文全文宽:"+  document.body.scrollWidth;  
s  +=  "\r\n网页正文全文高:"+  document.body.scrollHeight;  
s  +=  "\r\n网页被卷去的高:"+  document.body.scrollTop;  
s  +=  "\r\n网页被卷去的左:"+  document.body.scrollLeft;  
s  +=  "\r\n网页正文部分上:"+  window.screenTop;  
s  +=  "\r\n网页正文部分左:"+  window.screenLeft;  
s  +=  "\r\n屏幕分辨率的高:"+  window.screen.height;  
s  +=  "\r\n屏幕分辨率的宽:"+  window.screen.width;  
s  +=  "\r\n屏幕可用工作区高度:"+  window.screen.availHeight;  
s  +=  "\r\n屏幕可用工作区宽度:"+  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)">


//不缓存

"pragma" CONTENT="no-cache">
"Cache-Control" CONTENT="no-cache, must-revalidate">
"expires" CONTENT="0">


//正则匹配

匹配中文字符的正则表达式: [\u4e00-\u9fa5]
匹配双字节字符(包括汉字在内):[^\x00-\xff]
匹配空行的正则表达式:\n[\s| ]*\r
匹配HTML标记的正则表达式:/<(.*)>.*<\/\1>|<(.*) \/>/ 
匹配首尾空格的正则表达式:(^\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,''))"


//消除图像工具栏

"mypicture.jpg" HEIGHT="100px" WIDTH="100px" GALLERYIMG="false"
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 = '"clsid:ADB880A6-D8FF-11CF-9377-00AA003B7A11">'
       str += '"Command" value="Close">
';
       document.body.insertAdjacentHTML("beforeEnd", str);
       document.all.noTipClose.Click();
  }
      else
  {
       window.opener =null;
       window.close();
      }
   }
 else
 {
  window.close()
   }
}


//取得控件得绝对位置(1)

//获得控件的绝对位置(2) 

oRect = obj.getBoundingClientRect();
oRect.left
oRect.


//最小化,最大化,关闭

"clsid:ADB880A6-D8FF-11CF-9377-00AA003B7A11"> 
"Command" value="Minimize">
 
"clsid:ADB880A6-D8FF-11CF-9377-00AA003B7A11"> 
"Command" value="Maximize">
 
"clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11"> 
"Command" value="Close">
 
 
 
 


//光标停在文字最后 


"123" onfocus="cc()">


//页面进入和退出的特效

进入页面"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 


//网页是否被检索

"ROBOTS" content="属性值">
  其中属性值有以下一些:
  属性值为"all": 文件将被检索,且页上链接可被查询;
  属性值为"none": 文件不被检索,而且不查询页上的链接;
  属性值为"index": 文件将被检索;
  属性值为"follow": 查询页上的链接;
  属性值为"noindex": 文件不检索,但可被查询链接;
  属性值为"nofollow"


//打印分页

"page-break-after:always">page1

  

"page-break-after:always">page2

 

//设置打印

"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()">


"打印本页" onclick="factory.printing.Print(false)">
"页面设置" onclick="factory.printing.PageSetup()">
"打印预览" onclick="factory.printing.Preview()">

"http://www.meadroid.com/scriptx/docs/printdoc.htm?static" target=_blank>具体使用手册,更多信息,点这里
 


//自带的打印预览

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) 关闭窗体无提示 
 
"WebBrowser" width=0 height=0 classid="CLSID:8856F961-340A-11D0-A96B-00C04FD705A2">    
    

"Noprint" >
 
 
 

 

  


 

//去掉打印时的页眉页脚


"button" value="清空页码" onclick=PageSetup_Null()>
"button" value="恢复页码" onclick=PageSetup_Default()>

//浏览器验证


 

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;
}

//计算内容宽和高

  
  
"button" value="计算内容宽度" onClick="test(txt)">  

//无模式的提示框

function modelessAlert(Msg)
{
   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">
  
  屏蔽鼠标右键、Ctrl+N、Shift+F10、Alt+F4、F11、F5刷新、退格键



屏蔽鼠标右键、Ctrl+N、Shift+F10、Alt+F4、F11、F5刷新、退格键

//屏蔽打印


//移动的图层,拖动

1.this) onmousemove=MouseMove() onmouseup=MouseUp()>meizz

2.

"myp" src="logo.gif" ondrag="doDrag();" onmouseover="this.style.cursor='hand'" style="position:absolute;left=100;top=100;" onmousedown="doMouseDown();">
"#" onclick="return false">

wlecome




 


//文档状态改变 


<script> <br><span style="COLOR: #0000ff">var</span> doc=window.frames[<span style="COLOR: #ff00ff">"f"</span>].document; <br><span style="COLOR: #0000ff">function</span> s(){ <br> <span style="COLOR: #0000ff">if</span> (doc.readyState==<span style="COLOR: #ff00ff">"complete"</span>){ <br>  document.all.f.style.height=doc.body.scrollHeight <br>  document.all.f.style.width=doc.body.scrollWidth <br> } <br>} <br>doc.onreadystatechange=s <br></script>


//刷新后不变的文本框



"save" CONTENT="history">







//访问剪贴板

(1)拖拽访问
event.dataTransfer.setData("URL", oImage.src);
sImageURL = event.dataTransfer.getData("URL")
(2)普通访问
window.clipboardData.setData("Text",oSource.innerText);
window.clipboardData.getData("Text");


//操作COOKIE

function SetCookie(sName, sValue)
{
 document.cookie = sName + "=" + escape(sValue) + "; ";
}
function GetCookie(sName)
{
 var aCookie = document.cookie.split("; ");
 for (var i=0; i < aCookie.length; i++)
 {

  var aCrumb = aCookie[i].split("=");
  if (sName == aCrumb[0]) 
  return unescape(aCrumb[1]);
 }

}
function DelCookie(sName)
{
document.cookie = sName + "=" + escape(sValue) + "; expires=Fri, 31 Dec 1999 23:59:59 GMT;";
}

//setTimeout增加参数


<script> <br><span style="COLOR: #0000ff">var</span> _st = window.setTimeout; <br>window.setTimeout = <span style="COLOR: #0000ff">function</span>(fRef, mDelay) { <br> <span style="COLOR: #0000ff">if</span>(typeof fRef == '<span style="COLOR: #0000ff">function</span>'){ <br>  <span style="COLOR: #0000ff">var</span> argu = <span style="COLOR: #ff0000">Array</span>.prototype.slice.call(arguments,2); <br>  <span style="COLOR: #0000ff">var</span> f = (<span style="COLOR: #0000ff">function</span>(){ fRef.apply(<span style="COLOR: #0000ff">null</span>, argu); }); <br>  <span style="COLOR: #0000ff">return</span> _st(f, mDelay); <br> } <br> <span style="COLOR: #0000ff">return</span> _st(fRef,mDelay); <br>} <br><span style="COLOR: #0000ff">function</span> test(x){ <br> alert(x); <br>} <br>window.setTimeout(test,1000,'fason'); <br></script>

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
es6数组怎么去掉重复并且重新排序es6数组怎么去掉重复并且重新排序May 05, 2022 pm 07:08 PM

去掉重复并排序的方法:1、使用“Array.from(new Set(arr))”或者“[…new Set(arr)]”语句,去掉数组中的重复元素,返回去重后的新数组;2、利用sort()对去重数组进行排序,语法“去重数组.sort()”。

JavaScript的Symbol类型、隐藏属性及全局注册表详解JavaScript的Symbol类型、隐藏属性及全局注册表详解Jun 02, 2022 am 11:50 AM

本篇文章给大家带来了关于JavaScript的相关知识,其中主要介绍了关于Symbol类型、隐藏属性及全局注册表的相关问题,包括了Symbol类型的描述、Symbol不会隐式转字符串等问题,下面一起来看一下,希望对大家有帮助。

原来利用纯CSS也能实现文字轮播与图片轮播!原来利用纯CSS也能实现文字轮播与图片轮播!Jun 10, 2022 pm 01:00 PM

怎么制作文字轮播与图片轮播?大家第一想到的是不是利用js,其实利用纯CSS也能实现文字轮播与图片轮播,下面来看看实现方法,希望对大家有所帮助!

JavaScript对象的构造函数和new操作符(实例详解)JavaScript对象的构造函数和new操作符(实例详解)May 10, 2022 pm 06:16 PM

本篇文章给大家带来了关于JavaScript的相关知识,其中主要介绍了关于对象的构造函数和new操作符,构造函数是所有对象的成员方法中,最早被调用的那个,下面一起来看一下吧,希望对大家有帮助。

JavaScript面向对象详细解析之属性描述符JavaScript面向对象详细解析之属性描述符May 27, 2022 pm 05:29 PM

本篇文章给大家带来了关于JavaScript的相关知识,其中主要介绍了关于面向对象的相关问题,包括了属性描述符、数据描述符、存取描述符等等内容,下面一起来看一下,希望对大家有帮助。

javascript怎么移除元素点击事件javascript怎么移除元素点击事件Apr 11, 2022 pm 04:51 PM

方法:1、利用“点击元素对象.unbind("click");”方法,该方法可以移除被选元素的事件处理程序;2、利用“点击元素对象.off("click");”方法,该方法可以移除通过on()方法添加的事件处理程序。

整理总结JavaScript常见的BOM操作整理总结JavaScript常见的BOM操作Jun 01, 2022 am 11:43 AM

本篇文章给大家带来了关于JavaScript的相关知识,其中主要介绍了关于BOM操作的相关问题,包括了window对象的常见事件、JavaScript执行机制等等相关内容,下面一起来看一下,希望对大家有帮助。

foreach是es6里的吗foreach是es6里的吗May 05, 2022 pm 05:59 PM

foreach不是es6的方法。foreach是es3中一个遍历数组的方法,可以调用数组的每个元素,并将元素传给回调函数进行处理,语法“array.forEach(function(当前元素,索引,数组){...})”;该方法不处理空数组。

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

PhpStorm Mac バージョン

PhpStorm Mac バージョン

最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

Dreamweaver Mac版

Dreamweaver Mac版

ビジュアル Web 開発ツール

SecLists

SecLists

SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。

DVWA

DVWA

Damn Vulnerable Web App (DVWA) は、非常に脆弱な PHP/MySQL Web アプリケーションです。その主な目的は、セキュリティ専門家が法的環境でスキルとツールをテストするのに役立ち、Web 開発者が Web アプリケーションを保護するプロセスをより深く理解できるようにし、教師/生徒が教室環境で Web アプリケーションを教え/学習できるようにすることです。安全。 DVWA の目標は、シンプルでわかりやすいインターフェイスを通じて、さまざまな難易度で最も一般的な Web 脆弱性のいくつかを実践することです。このソフトウェアは、

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。