首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

JS防止站点被恶意保存

很多同学网站都在用静态博客,安全轻量的同时也带来了些许麻烦,正如首图中那样,站点被别人全盘撸走,反而比自己文章关键字还高.自己辛辛苦苦的耕耘变成了别人的果实…所以本文提供一下通过JS手段防止网站被扒皮的手段...进入正题: 因为站点是纯静态的,所以没办法防止网页被扒走,但是我们可以让他扒走的网页 用不了… 对静态资源设置防盗链,判断可信域名…不过很多同学都放在 coding/github 之类的 没有这种功能的托管商...= top){ location.href="https://huai.pub"; } //防止被嵌套....let whitelist=['huai.pub','127.0.0.1','localhost','']; //host白名单;空的话,为以file类型打开,是为了防止保存到本地调试,如果不担心此条...把上面部分放到一个不得不运行且打开页面就运行的JS里面(不建议放到公共资源部分,比如 jQuery之类的 )…当然 需要按照注释修改为自己的参数; 之后将这条JS 加密 然后将第二部分放到页面底部的JS

3.8K20

从 RegExp 构造器看 JS 字符串转义设计

2、表单输入项的字符串赋值给变量时也无需转义 假设页面中存在输入框 ,在输入框中输入字符 \w+\.ke\.qq\.com,则通过 JS 获取到的值可以直接传入 RegExp...构造器,同样无需考虑转义问题。...3、JS 代码中的转义处理 另外一种可能用到 RegExp string 参数的场景是:基于 JS 逻辑,动态创建正则表达式。例如正则表达式 /\w{3}/ 中的数字 3,是通过某个变量来传递的。...为了解决模板字符串的解析和转义问题,ES6 模板字面量中引入了反引号(`)和 tag function(知名「CSS in JS」 库 styled-components 中大量使用了这种语法)。...回过头来看,JS 正则表达式构造器的参数设计问题,其实不是 RegExp 引起的,而是 JavaScript String 的设计缺陷:单引号和双引号非但没有参考 PHP/Shell 之类的设计,反而给前端社区留下

12.8K80

js节流函数和js防止重复提交的N种方法

应用情景 经典使用情景:js的一些事件,比如:onresize、scroll、mousemove、mousehover等; 还比如:手抖、手误、服务器没有响应之前的重复点击; 这些都是没有意义的,重复的无效的操作...同样节流函数也是为了解决函数重复提交的问题,而防止重复提交的方法,不止节流函数一种实现。 方法汇总 本文整理了我在工作实践当中,觉的防止js重复提交,比较好用的方法,在这里和大家分享一下。...一、setTimeout + clearTimeout(节流函数)   本文提供两种实现方式:普通节流函数和闭包节流函数 二、设定flag/js加锁 三、通过disable 四、添加浮层比如loading...图层防止多次点击 具体实现 一、setTimeout + clearTimeout(节流函数) 方式一:闭包节流函数(可传递多个参数) /** * 闭包节流函数方法(可传参数) * @param Function...二、设定flag/js加锁 var lock = false; jQuery("#submit").on('click', function () { if (lock) { return

8.4K40

js节流函数和js防止重复提交的N种方法

应用情景 经典使用情景:js的一些事件,比如:onresize、scroll、mousemove、mousehover等; 还比如:手抖、手误、服务器没有响应之前的重复点击; 这些都是没有意义的,重复的无效的操作...同样节流函数也是为了解决函数重复提交的问题,而防止重复提交的方法,不止节流函数一种实现。 方法汇总 本文整理了我在工作实践当中,觉的防止js重复提交,比较好用的方法,在这里和大家分享一下。...一、setTimeout + clearTimeout(节流函数)   本文提供两种实现方式:普通节流函数和闭包节流函数 二、设定flag/js加锁 三、通过disable 四、添加浮层比如loading...图层防止多次点击 具体实现 一、setTimeout + clearTimeout(节流函数) 方式一:闭包节流函数(可传递多个参数) /** * 闭包节流函数方法(可传参数) * @param Function...二、设定flag/js加锁 var lock = false; jQuery("#submit").on('click', function () { if (lock) { return

4.6K120

进一步防止 Selenium 被检测——如何防止浏览器用新标签页打开链接?

最新版)如何正确移除Selenium中的 window.navigator.webdriver中,我们讲到了Page.addScriptToEvaluateOnNewDocument这个方法,它可以让当前标签页打开的所有网页...,在网页内容加载之前执行一段 JavaScript 代码,从而防止网站检测到window.navigator.webdriver属性。...但有些网站,点击了它的页面超链接以后,会自动以新的标签页打开,这种情况下就无法使用上面提到的技巧了。 为了解决这个问题,我们必须设法让当前页面的所有a标签涉及到的链接,都能在当前标签页打开。...如果要用一个a标签的链接在当前页面打开,我们只需要设置它的target属性值为_self。 现在我们需要用 JavaScript 把当面页面上的所有a标签的target属性值全部改成_self。...()运行本文讲到的两行 JavaScript 代码,强迫网页在当前标签页打开新的链接。

3.9K40

JS设置标签的内容和样式

而今天我们主要讲解JS逻辑和DOM的结合 - JS设置标签的内容和样式。 Tips:由于上一期的文章篇幅过长,微信的文章有字数要求,所以小编把部分的内容(操作符)放到这一期进行讲解。...在学CSS的时候,我们是如何选择到对应的标签进行样式的控制?利用了CSS选择器。那么JS如何在网页中找到相应的标签进行相关的操作?...那在JS中,它到底是如何控制标签的样式?...利用className属性给标签设置样式,CSS样式没有出现在标签内,只是给标签添加类名而已; ? 3 获取/设置标签的内容 现在可以利用JS来控制标签的样式,能否利用JS控制标签的内容?...+= '这是我新添加的标签'; 4 课程小结 掌握获取标签的目的是能够利用JS选择到相应的标签,便于对其进行相应的操作; 掌握设置样式的目的是能够利用JS实现对标签样式的控制

20.3K90

原生JS | 通过类名获取标签

原生JS通过类名获取标签 getElementsByClassName()是原生JavaScript提供的方法,但是并不是所有的浏览器都支持,在ie早期版本的浏览器是不允许通过这个方法获取标签的,因此...通过类名获取标签的思路 首先检测浏览器是否支持getElementsByClassName方法; 对于不支持getElementsByClassName方法的浏览器,通过标签名的方式来获取标签,之后,进行标签的筛选...,提取出符合“类名”要求的标签。...JS功能代码 1....功能优化 – 缩小选取范围 在此前的代码当中,存在着一个问题:如果通过通配符获取标签,那么所获取的标签数量过于庞大,需要筛选大量的标签,会耗费比较多的时间,此时可以借助第二个参数进行控制,允许用户传入一个参数

13K60
领券