当前位置:首页 > 全栈分享 > JavaScript > 正文
js给文章外链添加rel="nofollow",内链则自动排除
发布时间:2022-01-08 23:26:00作者:魏义齐阅读:()评论:
用帝国cms的人都知道,编辑器编辑文章添加超链接时无法主动设置是否添加rel="nofollow",这就造成一个问题:添加外链时得非常谨慎,也正因为此,文章“再给卢松松博客投稿我就把我手剁了”被人在评论区吐槽了,当时我还回复的振振有词,现在看,得感谢帝国论坛的一篇帖子触发了我的js思维。
方法很简单,理论上任何网站都可以套用,上代码:
- $(function () {
- $(".article").find("a").each(function () {
- var hrefvalue = $(this).attr("href");
- var str = "weiyiqi.net";
- var int = hrefvalue.indexOf(str);
- if (int == -1) {
- $(this).attr("rel", "nofollow");
- }
- })
- })
代码详解:
1.文章里面有未知个a,对每一个a都要执行操作,所以用each()函数。
2.变量hrefvalue表示每一个a的href值。
3.变量str表示需要排除的内链字符串。
4.indexOf()方法返回内链字符串在href值字符串中首次出现的位置,比如在字符串“https://blog.weiyiqi.net/html/bkxg/551.html”中如果打印出来的话就是13,如果不存在内链字符串则打印出来是-1。indexOf()方法还有一个参数规定在字符串中开始检索的位置,此处省略代表从href值字符串的首字符开始检索。
5.判断当变量int的值为-1时,也就是href值字符串不包含内链字符串时,给a标签添加rel="nofollow"。attr()方法用于设置或返回被选元素的属性和值。
我说清楚了吗?js还是要常写,不常写就跟我一样if条件里写一个等号去请教某大佬被批的恨不得找个老鼠洞钻进去。
帝国论坛的那篇帖子:http://bbs.phome.net/showthread-13-365489-0.html,可以f12查看这个a链接。
相关阅读
-
无相关信息
上一篇:给文章代码高亮模块增加一键复制功能下一篇:返回列表
原创不易,您的赞助就是博主更新的动力!
赞助请备注,8.88元及以上可在赞助光荣榜留下外链信息。
完全自托管的评论系统
-
东方星雨
-
deanhan
-
1264822519
-
aini3311
-
a1051020101
-
weiyiqi
- 网站防扒的一般措施(2517)
- js实现刷新页面所有微信号同步变化的效果(1780)
- 网站通用使文章图片相册式预览、左右滑动、自动切换、双击手捏放大缩小的方法(1270)
- 用swiper4给博客首页配置的一个3D方块切换轮播图(1033)
- 随页面滚动动态加载内容的实现方法(977)
- 点击文字即可将文字复制到粘贴板的实现方法(938)
- 打开页面自动滚动到指定位置的实现方法(937)
- slide Toggle()方法如何先后执行两次(621)
- 生日选择代码(594)
- 屏蔽终端的js代码(584)
- js给文章外链添加rel="nofollow",内链则自动排除(2022-01-08)
- 给文章代码高亮模块增加一键复制功能(2021-08-23)
- jQuery解决谷歌广告不显示但使打底广告无法点击问题(2021-08-12)
- 网站通用使文章图片相册式预览、左右滑动、自动切换、双击手捏放大缩小的方法(2019-06-10)
- 用swiper4给博客首页配置的一个3D方块切换轮播图(2018-10-29)