如何用JavaScript或jQuery给HTML模板添加不可移除版权文本
实现版权文本防移除/隐藏的跳转机制
核心思路
通过定时检测版权元素的存在状态与可见性,一旦发现元素被移除、隐藏(包括display:none、visibility:hidden或其他导致不可见的操作),立即触发页面跳转至指定URL。
步骤1:添加版权元素
先在模板的合适位置(比如页脚)插入版权文本,给它设置一个唯一且不易被替换的ID,方便后续JS定位:
<footer class="site-footer"> <div id="my-unique-copyright-2024" style="padding:12px; text-align:center; background:#eee;"> © 2024 你的模板品牌 | 版权所有,禁止移除或隐藏 </div> </footer>
步骤2:编写检测与跳转的jQuery代码
在模板的</body>标签前插入以下代码(确保页面已引入jQuery):
$(document).ready(function() { // 替换成你要跳转的目标URL const targetUrl = 'https://你的指定网址.com'; // 检测间隔(毫秒),建议500-1000ms,平衡性能与检测灵敏度 const checkDelay = 600; // 定义检测逻辑 function checkCopyrightStatus() { const copyrightEl = $('#my-unique-copyright-2024'); // 情况1:版权元素被直接移除 if (copyrightEl.length === 0) { window.location.href = targetUrl; return; } // 情况2:元素被设置为不可见 const isDisplayHidden = copyrightEl.css('display') === 'none'; const isVisibilityHidden = copyrightEl.css('visibility') === 'hidden'; // 情况3:元素被通过高度/宽度设置隐藏(比如height:0、overflow:hidden) const isPhysicallyInvisible = copyrightEl[0].offsetHeight === 0 || copyrightEl[0].offsetWidth === 0; // 满足任一隐藏条件则跳转 if (isDisplayHidden || isVisibilityHidden || isPhysicallyInvisible) { window.location.href = targetUrl; } } // 页面加载完成后立即检测一次 checkCopyrightStatus(); // 定时重复检测 setInterval(checkCopyrightStatus, checkDelay); });
关键细节说明
- 唯一ID:避免使用
copyright这类通用ID,改用自定义的唯一标识,降低被意外替换的概率 - 多重检测:覆盖了元素移除、CSS隐藏、物理尺寸隐藏三种常见的篡改方式
- 立即检测:页面加载完成后马上执行一次,防止用户在页面加载阶段就修改DOM
- 间隔调整:检测间隔不要设置过短(比如<300ms),避免影响页面性能
额外优化建议
- 可以对目标URL做简单混淆,防止直接被查看源码获取:
// 示例:字符串拼接混淆 const targetUrl = 'https://' + '你的域名' + '.com/' + '跳转路径'; - 若担心定时器被清除,可以结合
requestAnimationFrame实现更隐蔽的检测逻辑,但普通场景下定时器足够用
内容的提问来源于stack exchange,提问作者Asma Binta Younus
相关产品推荐
相关产品推荐

