几个有趣的Javascript Hack

1. 直接在浏览器中编辑网页内容


代码如下:

javascript:document.body.contentEditable='true';document.designMode='on'; void(0);

访问任意网站,在地址栏输入以上代码,会发生当前网页已经变成编辑模式了。

2. 舞动的图片


代码如下:

javascript:R=0; x1=.1; y1=.05; x2=.25; y2=.24; x3=1.6; y3=.24; x4=300; y4=200; x5=300; y5=200; DI=document.images; DIL=DI.length; function A(){for(i=0; i-DIL; i++){DIS=DI[ i ].style; DIS.position='absolute'; DIS.left=(Math.sin(R*x1+i*x2+x3)*x4+x5)+"px"; DIS.top=(Math.cos(R*y1+i*y2+y3)*y4+y5)+"px"}R++}setInterval('A()',5); void(0);

3、晃来晃去(我这边测试不可以)
不但是你,浏览器也不是那么喜欢这个javascript。在地址栏运行这个代码后,浏览器会迅速地晃来晃去。代码如下:


代码如下:

javascript:function flood(n) {if (self.moveBy) {for (i = 200; i > 0;i--){for (j = n; j > 0; j--) {self.moveBy(1,i); self.moveBy(i,0);self.moveBy(0,-i); self.moveBy(-i,0); } } }}flood(6);{ var inp = "D-X !msagro na dah tsuj resworb rouY"; var outp = ""; for (i = 0; i <= inp.length; i++) {outp =inp.charAt (i) + outp ; } alert(outp) ;}; reverse

如果这个代码无效,请将">"改成">","&It;'改成"<"。
4、计算器
在地址栏输入下面的代码,可以实现简单的四则运算:


代码如下:

javascript: alert(34343+3434-222);

事实上这个代码可以继续简化,比如简化成这样:
javascript: 34343+3434-222
5、防钓鱼验证
某些钓鱼网站提供的URL和网页本身的URL是不一致的,你可以用下面的代码进行验证,当两个URL相差太大的时候,你就要稍加小心了:
javascript:alert("The actual URL is:tt" + location.protocol + "//" + location.hostname + "/" + "nThe address URL is:tt" + location.href + "n" + "nIf the server names do not match, this may be a spoof.");

(0)

相关推荐

  • 几个有趣的Javascript Hack

    1. 直接在浏览器中编辑网页内容 复制代码 代码如下: javascript:document.body.contentEditable='true';document.designMode='on'; void(0); 访问任意网站,在地址栏输入以上代码,会发生当前网页已经变成编辑模式了. 2. 舞动的图片 复制代码 代码如下: javascript:R=0; x1=.1; y1=.05; x2=.25; y2=.24; x3=1.6; y3=.24; x4=300; y4=200; x5=3

  • 一个有趣的Ajax Hack示范

    今天在梦之光芒的BLOG上看见了一个Ajax Hack示范,其实跨站发现很容易,但是要做到大危害还是很难,偷偷COOKIE什么的只针对用户而已,XSS WORM的那种利用才是可怕的. 来看看他的一段VBSCRIPT脚本 复制代码 代码如下: vbscript:execute("  dim l,s:  l=chr(13)+chr(10):  s=""sub mycode""&l:  s=s&""dim http,url,p

  • 有趣的JavaScript数组长度问题代码说明

    第一点: 复制代码 代码如下: var lennon=Array(); lennon["name"]="windy"; lennon["year"]="1989"; lennon["living"]=true; alert(lennon.length); 结果:lennon.length 为 0   原因: 用以下方式增加数组元素,将不改变数组的长度 arr["a"]=3;第二点: 复制

  • 有趣的javascript数组定义方法

    复制代码 代码如下: var Person = new Array(); Person[0] = 120;//定义人的体重 120斤 Person[1] = 21;//定义人的年龄 21岁 document.write("体重="+Person[0]+"年龄="+Person[1]);//输出人的体重和年龄 另一个有趣的定义数组的方法: 复制代码 代码如下: var Person = new Array(); Person["weight"] =

  • 有趣的JavaScript隐式类型转换操作实例分析

    本文实例讲述了JavaScript隐式类型转换操作.分享给大家供大家参考,具体如下: JavaScript的数据类型是非常弱的(不然不会叫它做弱类型语言了)!在使用算术运算符时,运算符两边的数据类型可以是任意的,比如,一个字符串可以和数字相加.之所以不同的数据类型之间可以做运算,是因为JavaScript引擎在运算之前会悄悄的把他们进行了隐式类型转换的,如下是数值类型和布尔类型的相加: 3 + true; // 4 结果是一个数值型!如果是在C或者Java环境的话,上面的运算肯定会因为运算符两边

  • 浅析javascript中函数声明和函数表达式的区别

    javascript中声明函数的方法有两种:函数声明式和函数表达式. 区别如下: 1).以函数声明的方法定义的函数,函数名是必须的,而函数表达式的函数名是可选的. 2).以函数声明的方法定义的函数,函数可以在函数声明之前调用,而函数表达式的函数只能在声明之后调用. 3).以函数声明的方法定义的函数并不是真正的声明,它们仅仅可以出现在全局中,或者嵌套在其他的函数中,但是它们不能出现在循环,条件或者try/catch/finally中,而     函数表达式可以在任何地方声明. 下面分别用两种方法定

  • JavaScript数组应用 可依次读取的公告栏文字

    JavaScript数组文字 var i = 0; var TextNumber = -1; var TextInput = new Object(); var HelpText=""; var Text = ""; var Speed=50; var message=0; var addPadding="\r\n"; TextInput[0] = "我们庆祝日!"; TextInput[1] = "我们感谢广大朋友

  • 浅谈javascript 函数表达式和函数声明的区别

    javascript中声明函数的方法有两种:函数声明式和函数表达式. 区别如下: 1).以函数声明的方法定义的函数,函数名是必须的,而函数表达式的函数名是可选的. 2).以函数声明的方法定义的函数,函数可以在函数声明之前调用,而函数表达式的函数只能在声明之后调用. 3).以函数声明的方法定义的函数并不是真正的声明,它们仅仅可以出现在全局中,或者嵌套在其他的函数中,但是它们不能出现在循环,条件或者try/catch/finally中,而     函数表达式可以在任何地方声明. 下面分别用两种方法定

  • 详解JavaScript中的强制类型转换

    avaScript 原语 JavaScript 建立在一系列基本单元之上.你应该对其中的一些已经很熟悉了,比如字符串和数字: var greet = "Hello"; var year = 89; 字符串和数字是该语言所谓"原语"的一部分.完整清单是: String Number Boolean Null Undefined Object Symbol (ES6中添加,此处不予介绍) 布尔值用来表示可能是真或假的值. null 是故意不去赋值,它通常被分配给一个变量

  • 15个顶级开源JavaScript框架和库

    JavaScript 这种语言得到了许多技术领袖的支持,其中一位是WordPress的创始人马特·马伦韦格,他暗示WordPress开发人员应该学习它,清楚地向WordPress社区传递关于它未来重要性的信息.提到这件事很受欢迎.向更好的技术过渡将使WordPress能够跟上未来的挑战. JavaScript的开源立场也是最好的之一.与流行的观点相反,JavaScript不是一个项目,而是一个具有开放标准的规范,在这个规范中,语言是由其核心团队进化和维护的.ECMAScript,JavaScri

随机推荐