【发布时间】:2016-06-04 12:03:26
【问题描述】:
这段代码我是用js写的,但是需要用ejs重写,因为页面加载后用户看不到。这是我的代码:
<script type="text/javascript" src="js/showads.js" class="deleteMe"></script>
<script type="text/javascript" class="deleteMe">
if(window.canRunAds == undefined){
window.location = "/welcome";
}
$('.deleteMe').remove();
</script>
我有一个名为 showads.js 的文件,其中包含一个 canRunAds 变量。如果客户端启用了adblock,则不会导入此文件,从而使canRunAds变量未定义,如果客户端将被重定向到'/welcome',然后我只删除这2个脚本,但它不起作用,因为客户可以看到它并可能绕过它。有没有办法在ejs中写这个,因为当我尝试它时,我得到一个错误,说窗口未定义。谢谢!
【问题讨论】:
-
对不起,但您尝试做的事情是不可能的。您试图隐藏的代码纯粹是客户端任务,因此您无法在服务器上运行它。
-
@Juhana ejs 不是客户端语言吗?你可以写:
Hi 这会运行。如果您有服务器发送的变量,这也适用!
-
如果你在客户端运行它就是客户端。但是代码在客户端,客户端可以随意读取、修改和绕过,所以解决不了问题。
-
@Juhana 好吧,还有其他方法吗?或者直接检查用户是否有广告屏蔽!
-
就像我已经说过的,这是不可能的。用户可以完全控制他们的计算机。
标签: javascript html file variables ejs