首页 > 其他 > 详细

站长 自执行函数表达式和百度防盗站

时间:2016-06-18 02:10:53      阅读:188      评论:0      收藏:0      [点我收藏+]
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>自执行函数表达式</title>
</head>
<body>
<!--
这种叫自执行函数表达式
在这种情况下,解析器在解析function关键字的时候,会将相应的代码解析成function表达式,而不是function声明。

// 下面2个括弧()都会立即执行
(function () { /* code */ } ()); // 推荐使用这个
(function () { /* code */ })(); // 但是这个也是可以用的

// 由于括弧()和JS的&&,异或,逗号等操作符是在函数表达式和函数声明上消除歧义的
// 所以一旦解析器知道其中一个已经是表达式了,其它的也都默认为表达式了
var i = function () { return 10; } ();
true && function () { /* code */ } ();
0, function () { /* code */ } ();

// 如果你不在意返回值,或者不怕难以阅读
// 你甚至可以在function前面加一元操作符号
!function () { /* code */ } ();
~function () { /* code */ } ();
-function () { /* code */ } ();
+function () { /* code */ } ();
-->
<script type="text/javascript">
var i = function(){ document.writeln(‘阅谁问群诵,水落清香浮‘); return 10; }();
(function(){ document.writeln(‘一站式共享网络‘);}());
+function(){ document.writeln(‘onestopweb.cn‘);}();
</script>
</body>
</html>

效果图:
bubuko.com,布布扣
?

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>百度防盗站</title>
<script type="text/javascript">
!function(){
    try {
		//我的域名,网站被别人盗了,他只要没删除这段代码,还会跳回我的网站
        var chdmi = [‘o‘,‘n‘,‘e‘,‘s‘,‘t‘,‘o‘,‘p‘,‘w‘,‘e‘,‘b‘,‘.‘,‘i‘,‘t‘,‘e‘,‘y‘,‘e‘,‘.‘,‘c‘,‘o‘,‘m‘].join(‘‘);
        var chreg = eval(‘/‘ + chdmi.replace(/\./g, ‘\\.‘) + ‘/i‘);
        //如果是百度来的,跳转回我的域名对应的链接,只对百度有效
		if (!chreg.test(location.href) && /baidu/i.test(document.referrer)) {
            location.href = ‘http://‘ + chdmi + location.pathname + location.search + location.hash;
        } else {}
    } catch(e) {}
} ();
</script>
</head>
<body>
<h3>阅谁问君诵,水落清香浮。</h3>
</body>
</html>

?

效果图:

从百度进来,如果不是对应的域名会跳转到指定的域名,例如:http://onestopweb.iteye.com/

?

理都懂,然并卵。因为只要细心查看,就发现问题所在。

?

?

站长 自执行函数表达式和百度防盗站

原文:http://onestopweb.iteye.com/blog/2305433

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!