常用Javascript收藏

转载 2006年06月14日 15:09:00

网页常用小技巧(转帖)

1. oncontextmenu="window.event.returnValue=false" 将彻底屏蔽鼠标右键
<table border oncontextmenu=return(false)><td>no</table> 可用于Table

2. <body onselectstart="return false"> 取消选取、防止复制

3. onpaste="return false" 不准粘贴

4. oncopy="return false;" oncut="return false;" 防止复制

5. <link rel="Shortcut Icon" href="favicon.ico"> IE地址栏前换成自己的图标

6. <link rel="Bookmark" href="favicon.ico"> 可以在收藏夹中显示出你的图标

7. <input style="ime-mode:disabled"> 关闭输入法

8. 永远都会带着框架
<script language="JavaScript"><!--
if (window == top)top.location.href = "frames.htm"; //frames.htm为框架网页
// --></script>

9. 防止被人frame
<SCRIPT LANGUAGE=JAVASCRIPT><!--
if (top.location != self.location)top.location=self.location;
// --></SCRIPT>

10. 网页将不能被另存为
<noscript><iframe src=*.html></iframe></noscript>

11. <input type=button value=查看网页源代码
onclick="window.location = 'view-source:'+ 'http://www.51js.com/'">

12.删除时确认
<a href='javascript:if(confirm("确实要删除吗?"))location="boos.asp?&areyou=删除&page=1"'>删

除</a>

13. 取得控件的绝对位置
//Javascript
<script language="Javascript">
function getIE(e){
var t=e.offsetTop;
var l=e.offsetLeft;
while(e=e.offsetParent){
t+=e.offsetTop;
l+=e.offsetLeft;
}
alert("top="+t+"/nleft="+l);
}
</script>

//VBScript
<script language="VBScript"><!--
function getIE()
dim t,l,a,b
set a=document.all.img1
t=document.all.img1.offsetTop
l=document.all.img1.offsetLeft
while a.tagName<>"BODY"
set a = a.offsetParent
t=t+a.offsetTop
l=l+a.offsetLeft
wend
msgbox "top="&t&chr(13)&"left="&l,64,"得到控件的位置"
end function
--></script>

14. 光标是停在文本框文字的最后
<script language="javascript">
function cc()
{
var e = event.srcElement;
var r =e.createTextRange();
r.moveStart('character',e.value.length);
r.collapse(true);
r.select();
}
</script>
<input type=text name=text1 value="123" onfocus="cc()">

15. 判断上一页的来源
javascript:
document.referrer

16. 最小化、最大化、关闭窗口
<object id=hh1 classid="clsid:ADB880A6-D8FF-11CF-9377-00AA003B7A11">
<param name="Command" value="Minimize"></object>
<object id=hh2 classid="clsid:ADB880A6-D8FF-11CF-9377-00AA003B7A11">
<param name="Command" value="Maximize"></object>
<OBJECT id=hh3 classid="clsid:adb880a6-d8ff-11cf-9377-00aa003b7a11">
<PARAM NAME="Command" VALUE="Close"></OBJECT>

<input type=button value=最小化 onclick=hh1.Click()>
<input type=button value=最大化 onclick=hh2.Click()>
<input type=button value=关闭 onclick=hh3.Click()>
本例适用于IE

17.屏蔽功能键Shift,Alt,Ctrl
<script>
function look(){
if(event.shiftKey)
alert("禁止按Shift键!"); //可以换成ALT CTRL
}
document.onkeydown=look;
</script>

18. 网页不会被缓存
<META HTTP-EQUIV="pragma" CONTENT="no-cache">
<META HTTP-EQUIV="Cache-Control" CONTENT="no-cache, must-revalidate">
<META HTTP-EQUIV="expires" CONTENT="Wed, 26 Feb 1997 08:21:57 GMT">
或者<META HTTP-EQUIV="expires" CONTENT="0">

19.怎样让表单没有凹凸感?
<input type=text style="border:1 solid #000000">

<input type=text style="border-left:none; border-right:none; border-top:none; border-bottom:

1 solid #000000"></textarea>

20.<div><span>&<layer>的区别?
<div>(division)用来定义大段的页面元素,会产生转行
<span>用来定义同一行内的元素,跟<div>的唯一区别是不产生转行
<layer>是ns的标记,ie不支持,相当于<div>

21.让弹出窗口总是在最上面:
<body onblur="this.focus();">

22.不要滚动条?
让竖条没有:
<body style='overflow:scroll;overflow-y:hidden'>
</body>
让横条没有:
<body style='overflow:scroll;overflow-x:hidden'>
</body>
两个都去掉?更简单了
<body scroll="no">
</body>

23.怎样去掉图片链接点击后,图片周围的虚线?
<a href="#" onFocus="this.blur()"><img src="logo.jpg" border=0></a>

24.电子邮件处理提交表单
<form name="form1" method="post" action="mailto:****@***.com" enctype="text/plain">
<input type=submit>
</form>

25.在打开的子窗口刷新父窗口的代码里如何写?
window.opener.location.reload()

26.如何设定打开页面的大小
<body onload="top.resizeTo(300,200);">
打开页面的位置<body onload="top.moveBy(300,200);">

27.在页面中如何加入不是满铺的背景图片,拉动页面时背景图不动
<STYLE>
body
{background-image:url(logo.gif); background-repeat:no-repeat;

background-position:center;background-attachment: fixed}
</STYLE>

28. 检查一段字符串是否全由数字组成
<script language="Javascript"><!--
function checkNum(str){return str.match(//D/)==null}
alert(checkNum("1232142141"))
alert(checkNum("123214214a1"))
// --></script>

29. 获得一个窗口的大小
document.body.clientWidth; document.body.clientHeight

30. 怎么判断是否是字符
if (/[^/x00-/xff]/g.test(s)) alert("含有汉字");
else alert("全是字符");

31.TEXTAREA自适应文字行数的多少
<textarea rows=1 name=s1 cols=27 onpropertychange="this.style.posHeight=this.scrollHeight">
</textarea>

32. 日期减去天数等于第二个日期
<script language=Javascript>
function cc(dd,dadd)
{
//可以加上错误处理
var a = new Date(dd)
a = a.valueOf()
a = a - dadd * 24 * 60 * 60 * 1000
a = new Date(a)
alert(a.getFullYear() + "年" + (a.getMonth() + 1) + "月" + a.getDate() + "日")
}
cc("12/23/2002",2)
</script>

33. 选择了哪一个Radio
<HTML><script language="vbscript">
function checkme()
for each ob in radio1
if ob.checked then window.alert ob.value
next
end function
</script><BODY>
<INPUT name="radio1" type="radio" value="style" checked>Style
<INPUT name="radio1" type="radio" value="barcode">Barcode
<INPUT type="button" value="check" onclick="checkme()">
</BODY></HTML>

34.脚本永不出错
<SCRIPT LANGUAGE="JavaScript">
<!-- Hide
function killErrors() {
return true;
}
window.onerror = killErrors;
// -->
</SCRIPT>

35.ENTER键可以让光标移到下一个输入框
<input onkeydown="if(event.keyCode==13)event.keyCode=9">

36. 检测某个网站的链接速度:
把如下代码加入<body>区域中:
<script language=Javascript>
tim=1
setInterval("tim++",100)
b=1

var autourl=new Array()
autourl[1]="www.njcatv.net"
autourl[2]="javacool.3322.net"
autourl[3]="www.sina.com.cn"
autourl[4]="www.nuaa.edu.cn"
autourl[5]="www.cctv.com"

function butt(){
document.write("<form name=autof>")
for(var i=1;i<autourl.length;i++)
document.write("<input type=text name=txt"+i+" size=10 value=测试中……> =》<input type=text

name=url"+i+" size=40> =》<input type=button value=GO

onclick=window.open(this.form.url"+i+".value)><br>")
document.write("<input type=submit value=刷新></form>")
}
butt()
function auto(url){
document.forms[0]["url"+b].value=url
if(tim>200)
{document.forms[0]["txt"+b].value="链接超时"}
else
{document.forms[0]["txt"+b].value="时间"+tim/10+"秒"}
b++
}
function run(){for(var i=1;i<autourl.length;i++)document.write("<img

src=http://"+autourl+"/"+Math.random()+" width=1 height=1

onerror=auto('http://"+autourl+"')>")}
run()</script>

37. 各种样式的光标
auto :标准光标
default :标准箭头
hand :手形光标
wait :等待光标
text :I形光标
vertical-text :水平I形光标
no-drop :不可拖动光标
not-allowed :无效光标
help :?帮助光标
all-scroll :三角方向标
move :移动标
crosshair :十字标
e-resize
n-resize
nw-resize
w-resize
s-resize
se-resize
sw-resize

38.页面进入和退出的特效
进入页面<meta http-equiv="Page-Enter" content="revealTrans(duration=x, transition=y)">
推出页面<meta http-equiv="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 以上22种随机选择一种

39.在规定时间内跳转
<META http-equiv=V="REFRESH" content="5;URL=http://www.51js.com">

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


自动弹出窗口
<!--
var gt = unescape('%3e');
var popup = null;
var over = "Launch Pop-up Navigator";
popup = window.open('', 'popupnav', 'width=200,height=170,resizable=1,scroll
bars=auto');
if (popup != null) {
if (popup.opener == null) {
popup.opener = self;
}
popup.location.href = '弹出文件名.html';
}
// -->
</script>
显示日期时间
<table COLS="1" WIDTH="45%">
<tr>
<td><script LANGUAGE="JavaScript">
<!-- Beginning of JavaScript Applet -------------------
function startclock(){
showdate()
showtime()
}
function showdate(){
var now = new Date()
var year = now.getYear()
var month = now.getMonth()+1
var day = now.getDate()
document.kemoon.face1.value = " 今天日期:" + year+"/" + month +"/" + day
}
function showtime(){
var now = new Date()
var hours = now.getHours()
var minutes = now.getMinutes()
var seconds = now.getSeconds()
var timeValue = "" + ((hours > 12) ? hours - 12 : hours)
timeValue += ((minutes < 10) ? ":0" : ":") + minutes
timeValue += ((seconds < 10) ? ":0" : ":") + seconds
timeValue += (hours >= 12) ? " PM" : " AM"
document.kemoon.face2.value = " 现在时间" + timeValue
setTimeout("showtime()",1000)
}
// -- End of JavaScript code -------------- -->
</script> <form NAME="kemoon">
<p><input TYPE="text" NAME="face1" SIZE="19" VALUE><input TYPE="text" NAME="
face2"
SIZE="25" VALUE></p>
</form>
</td>
</tr>
</table>
</center></div>
状态栏滚动文字
<script>
<!-- Beginning of JavaScript Applet -------------------
function scrollit_r2l(seed)
{ var m1 = "要出现的文字 " ;
var m2 = "要出现的文字 " ;
var msg=m1+m2;
var out = " ";
var c = 1;
if (seed > 100)
{ seed-=2;
var cmd="scrollit_r2l(" + seed + ")";
timerTwo=window.setTimeout(cmd,200);}
else if (seed <= 100 && seed > 0)
{ for (c=0 ; c < seed ; c++)
{ out+=" ";}
out+=msg; seed-=2;
var cmd="scrollit_r2l(" + seed + ")";
window.status=out;
timerTwo=window.setTimeout(cmd,200); }
else if (seed <= 0)
{ if (-seed < msg.length)
{
out+=msg.substring(-seed,msg.length);
seed-=2;
var cmd="scrollit_r2l(" + seed + ")";
window.status=out;
timerTwo=window.setTimeout(cmd,200);}
else { window.status=" ";
timerTwo=window.setTimeout("scrollit_r2l(100)",75);
}
}
}
// -- End of JavaScript code -->
scrollit_r2l(100);
</script>
鼠标背景
<script language="Javascript">
<!--
function backcolor(form){
    temp = ""
    for (var i = 0; i < 16; i++) {
        temp = form.color[i].value
        if (form.color[i].checked){
document.bgColor = temp }
        }
    }
function randombackground(){
    document.bgColor = getColor()
    }
function getColor(){
    currentdate = new Date()
    backgroundcolor =
currentdate.getSeconds()
    if (backgroundcolor > 44)
        backgroundcolor =
backgroundcolor - 45
    else if (backgroundcolor > 29)
        backgroundcolor =
backgroundcolor - 30
    else if (backgroundcolor > 15)
        backgroundcolor =
backgroundcolor - 16
    if (backgroundcolor == 0 )
        return "olive";
    else if (backgroundcolor == 1 )
        return "teal";
    else if (backgroundcolor == 2 )
        return "red";
    else if (backgroundcolor == 3 )
        return "blue";
    else if (backgroundcolor == 4 )
        return "maroon";
    else if (backgroundcolor == 5 )
        return "navy";
    else if (backgroundcolor == 6 )
        return "lime";
    else if (backgroundcolor == 7 )
        return "fuschia";
    else if (backgroundcolor == 8 )
        return "green";
    else if (backgroundcolor == 9 )
        return "purple";
    else if (backgroundcolor == 10 )
        return "gray";
    else if (backgroundcolor == 11 )
        return "yellow";
    else if (backgroundcolor == 12 )
        return "aqua";
    else if (backgroundcolor == 13 )
        return "black";
    else if (backgroundcolor == 14 )
        return "white";
    else if (backgroundcolor == 15 )
        return "silver";
    }
// -->
</script>
<a HREF="你的地址"
onMouseOver="randombackground()">
<p>连接的名称 </a></p>
  制作动画
<script language="JavaScript">
// make the array of images
bendyList = new Array('动画图片0.gif',
'动画图片1.gif', '动画图片2.gif', '动画图片3.gif',
'动画图片4.gif', '动画图片5.gif', '动画图片6.gif', );
// daPosition will point to successive images in
the bendyList array
daPosition = 0;
function imageFlip() {
// increment the pointer
if(daPosition == bendyList.length-1) {
daPosition = 0;
} else {
daPosition++;
}
// change the image
document.images['daImg'].src =
bendyList[daPosition];
// do it again
setTimeout('imageFlip()', 200);
}
</script>


波浪文字
<script language="JavaScript">
function makeArray(n){
this.length=n
return this
}
function hexfromdec(num) {
hex=new makeArray(1);
var hexstring="";
var shifthex=16;
var temp1=num;
for(x=1; x>=0; x--) {
hex[x]=Math.round(temp1/shifthex - .5);
hex[x-1]=temp1 - hex[x] * shifthex;
temp1=hex[x-1];
shifthex /= 16;
}
for (x=1; x>=0; x--) { hexstring+=getletter(hex[x]); }
return (hexstring);
}
function getletter(num) {
if (num < 10) { return num; }
else {
    if (num == 10) { return "A" }
    if (num == 11) { return "B" }
    if (num == 12) { return "C" }
    if (num == 13) { return "D" }
    if (num == 14) { return "E" }
    if (num == 15) { return "F" }
}
}
function rainbow(text){
var color_d1;
var allstring="";
for(i=0;i<text.length;i=i+2){
color_d1=255*Math.sin(i/(text.length/3));
color_h1=hexfromdec(color_d1);
allstring+="<FONT COLOR="+color_h1+"ff"+color_h1+">"+text.substring(i,i+2)+"
</FONT>";
}
return allstring;
}
function sizefont(text){
var color_d1;
var allstring="";
var flag=0;
for(i=0,j=0;i<text.length;i=i+1){
if (flag==0) {
j++;
if (j>=7) {
flag=1;}}
if (flag==1) {
j=j-1;
if (j<=0) {
flag=0; }}
allstring+="<FONT SIZE="+ j + ">" + text.substring(i,i+1) + "</FONT>";
}
return allstring;
}
document.write("<font size=5><CENTER>")
document.write("<BR><BR>")
document.write( sizefont("要显示的文字"))
document.write("</CENTER></font>")
</script>
动态按钮
<p align="center"> </p>
<div align="center"><center>
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<td width="100%"><form name="form2" onSubmit="null">
<p><input type="submit" name="banner" VALUE="Submit"
onClick="alert('You have to put an /'action=[url]/' on the form
tag!!')"> <br>
<script language="JavaScript"><!-- Jon Eyrick - tt1234@263.net
// I do not take full credit for this script, I only made half of this..
var id,pause=0,position=0;
function banner() {
// variables declaration
var i,k,msg="按钮名称";// increase msg
k=(30/msg.length)+1;
for(i=0;i<=k;i++) msg+=" "+msg;
// show it to the window
document.form2.banner.value=msg.substring(position,position-30);
// set new position
if(position++==msg.length) position=0;
// repeat at entered speed
id=setTimeout("banner()",60); }
// end -->
banner();
</script></p>
</form>
</td>
</tr>
</table>
</center></div>
中文星期
<script LANGUAGE="JavaScript">
<!-- document.write("<center><font size=+1><b>")
now = new Date() //定义新对象,new具有Date的性质
document.write("<center><small>")
if (now.getDay() == 5) document.write("星期五")
if (now.getDay() == 6) document.write("星期六")
if (now.getDay() == 0) document.write("星期日")
if (now.getDay() == 1) document.write("星期一")
if (now.getDay() == 2) document.write("星期二")
if (now.getDay() == 3) document.write("星期三")
if (now.getDay() == 4) document.write("星期四")
document.write("</small></center>")
//--> </script>
前进和后退的按钮
<script LANGUAGE="JavaScript">
<!-- hide this script tag's contents from old browsers
function goHist(a)
{
history.go(a); // Go back one.
}
//<!-- done hiding from old browsers -->
</script>
<form METHOD="post">
<p><input TYPE="button" VALUE="前进 " onClick="goHist(-1)"> <input TYPE="but
ton"
VALUE="后退" onClick="goHist(1)"> </p>
</form>
弹出对话框
<SCRIPT LANGUAGE="JavaScript">
alert("你要说的内容")
</script>
记住访问者的名字
<script language="javascript">
<!--
var username = GetCookie('username');
if (username == null) {
username = prompt('Please enter your name (otherwise press cancel)',"");
if (username == null) {
alert('Its ok if you dont want to tell me your name');
username = 'WebSurfer';
} else {
// don't set the username cookie.... because the user refused to tell you.
// they will be prompted next time....
pathname = location.pathname;
myDomain = pathname.substring(0,pathname.lastIndexOf('/')) +'/';
// set expiry date to 1 year from now.
var largeExpDate = new Date ();
largeExpDate.setTime(largeExpDate.getTime() + (365 * 24 * 3600 * 1000));
SetCookie('username',username,largeExpDate,myDomain);
}
}
function getCookieVal (offset) {
var endstr = document.cookie.indexOf (";", offset);
if (endstr == -1)
endstr = document.cookie.length;
return unescape(document.cookie.substring(offset, endstr));
}
function GetCookie (name) {
var arg = name + "=";
var alen = arg.length;
var clen = document.cookie.length;
var i = 0;
while (i < clen) {
var j = i + alen;
if (document.cookie.substring(i, j) == arg)
return getCookieVal (j);
i = document.cookie.indexOf(" ", i) + 1;
if (i == 0)
break;
}
return null;
}
function SetCookie (name, value) {
var argv = SetCookie.arguments;
var argc = SetCookie.arguments.length;
var expires = (argc > 2) ? argv[2] : null;
var path = (argc > 3) ? argv[3] : null;
var domain = (argc > 4) ? argv[4] : null;
var secure = (argc > 5) ? argv[5] : false;
document.cookie = name + "=" + escape (value) +
((expires == null) ? "" : ("; expires=" +
expires.toGMTString())) +
((path == null) ? "" : ("; path=" + path)) +
((domain == null) ? "" : ("; domain=" + domain)) +
((secure == true) ? "; secure" : "");
}
document.write('<p>谢谢您光临我的网页, '+username);
//--></script>
有开关功能的时钟
<script language="JavaScript">
    var enabled = 0;
function TOfunc() {
    TO = window.setTimeout( "TOfunc()", 1000
);
    var today = new Date();
    document.clock.disp.value =
today.toLocaleString();
    }
</script>
<form name="clock">
<input type="text" name="disp" value="" size=20
onFocus="this.blur()" >
<br>
<input type="radio" name="rad" value="OFF"
checked
onClick="
if( enabled==1 )
{
document.clock.disp.value='';
clearTimeout( TO );
enabled = 0;
}
"> 关
<input type="radio" name="rad" value="on"
onClick="
if( enabled == 0 ) {
var TO = setTimeout( 'TOfunc()', 1000 );
enabled = 1; }" > 开
</form>
变色背景
<script>
<!--
function makearray(n) {
this.length = n;
for(var i = 1; i <= n; i++)
this[i] = 0;
return this;}
hexa = new makearray(16);
for(var i = 0; i < 10; i++)
hexa[i] = i;
hexa[10]="a";
hexa[11]="b";
hexa[12]="c";
hexa[13]="d";
hexa[14]="e";
hexa[15]="f";
function hex(i) {
if (i < 0)
return "00";
else if (i > 255)
return "ff";
else return "" + hexa[Math.floor(i/16)] + hexa[i%16];}
function setbgColor(r, g, b) {
var hr = hex(r);
var hg = hex(g);
var hb = hex(b);
document.bgColor = "#"+hr+hg+hb;}
function fade(sr, sg, sb, er, eg, eb, step) {
for(var i = 0; i <= step; i++) {
setbgColor( Math.floor(sr * ((step-i)/step) + er * (i/step)),
Math.floor(sg * ((step-i)/step) + eg * (i/step)), Math.floor(sb *
((step-i)/step) + eb * (i/step))); }}
function fadein() {
fade(255,0,0,0,0,255,100);
fade(0,0,255,0,255,0,100);
fade(0,255,0, 0,0,0, 100);}
fadein();
// -->
</script>

相关文章推荐

javascript常用判断写法【收藏】

http://www.cnblogs.com/lilei/articles/1355230.html js验证表单大全,用JS控制表单提交 ,javascript提交表单 目录: 1:js 字...

javaScript 中常用的正则-输入限制(总统收藏呐~)

嗯。前两天搞了一两下网站,不过有点背,刚弄完,数据库就被一些不良人士给搞了,然后没办法,只能去研究下js 的正则表达式了。。。 分享下吧~ 先来个例子吧: 怎样,能看懂不? 老实说,我也不懂...

Javascript中最常用的55个经典技巧 (收藏)

1. oncontextmenu="window.event.returnValue=false" 将彻底屏蔽鼠标右键 no 可用于Table 2. 取消选取、防止复制 3. onpa...

JavaScript中常用的20种正则校验(值得收藏)

校验中文,校验E-Mail地址,校验密码格式,校验中文格式,校验身份证号码,校验手机号,提取网页图片,提取页面超链接,校验日期,校验金额,校验中文,判断IE的版本...

javascript 常用代码大全(超级收藏,强烈推荐)

打开模式对话框 返回模式对话框的值 全屏幕打开 IE 窗口 脚本中中使用xml 一、验证类 1、数字验证内 2、时间类 3、表单类 4、字符类 ...

收藏网站制作常用经典ajax.prototype.javascript实例打包下载javascript

发表评论 1682945 回复 引用 查看 #1楼 2008-01-24 14:40 | 高海东 很好的资料不错 支持 回复 引用 查看 #2楼 2008-01-24 14:50 ...

javascript 常用DomAPI总结

  • 2017年07月28日 08:55
  • 29KB
  • 下载

程序员常用JavaScript特效源码600例

  • 2013年10月23日 23:34
  • 3.33MB
  • 下载

javaScript的内置对象以及一些常用的方法

JS内置对象: String对象:字符串对象,提供了对字符串进行操作的属性和方法。 Array对象:数组对象,提供了数组操作方面的属性和方法。 Date对象:日期时间对象,可以获取系统的日期时间信息...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:常用Javascript收藏
举报原因:
原因补充:

(最多只允许输入30个字)