logo NodeSeekbeta

【写了个脚本,分享给大家一起用吧】不需要点进帖子详情页,在首页鼠标悬浮到标题,即可查看帖子的内容,方了个大便了!

油猴暴力猴脚本(目前我用的是EDGE和Chrome的暴力猴),写了一个不需要点进详情页,就可以看详情的脚本

鼠标悬浮到帖子标题上,就会出现悬浮框展示帖子详情内容;
鼠标点击悬浮框外任何地方,悬浮框即可消失(之所以采用点击消失而不是鼠标挪开消失,是为了能在悬浮框内滚动看所有内容)

油猴,是一个浏览器插件,如果没安装过的可以去浏览器插件时长搜索油猴,然后安装,之后把我的代码放到油猴里就可以咯,具体可以百度谷歌一下。


如果可以,期望大家可以走过路过给个免费鸡腿 🍗

刚才有人说用不了,经后面楼层提醒,不同油猴和浏览器,顶部脚本描述部分可能有区别,如果用不了,需要修改如下:

将 

// @namespace   *://*nodeseek.com/*
// @match       *://*nodeseek.com/* 

改成:

// @namespace   *://*nodeseek.com/*
// @match       *://www.nodeseek.com/*

或改成:

// @namespace   *://*.nodeseek.com/*
// @match       *://*.nodeseek.com/*


WX20240107-183852@2x.png


正式代码

// ==UserScript==
// @name         鼠标悬浮展示nodeseek帖子详情
// @version      0.1
// @description  鼠标悬浮展示nodeseek帖子详情
// @author       Damon
// @namespace   *://*.nodeseek.com/*
// @match       *://*.nodeseek.com/*
// @grant        none
// ==/UserScript==

(function() {
	

	// 创建用于显示链接内容的元素
	var hoverBox = document.createElement('div');
	hoverBox.style.position = 'absolute';
	hoverBox.style.border = '1px solid black';
	hoverBox.style.background = 'white';
	hoverBox.style.padding = '10px';
	hoverBox.style.display = 'none';
	hoverBox.style.height = '500px';
	// hoverBox.style.width = (document.getElementById("nsk-body").offsetWidth-100) + 'px';
	// hoverBox.style.width = (window.innerWidth - 50) + 'px';
  hoverBox.style.width = (document.getElementById("nsk-body").offsetWidth - 120) + 'px';
  hoverBox.style.maxWidth = (document.getElementById("nsk-body").offsetWidth - 120) + 'px';
	hoverBox.style.overflow = 'auto';
	document.body.appendChild(hoverBox);

	// 为所有 .post-title 下的 a 标签添加鼠标悬浮事件
	var links = document.querySelectorAll('.post-title a');
	links.forEach(function(link) {
		link.addEventListener('mouseover',
		function(event) {
			// 获取链接的 href
			var href = this.href;

			// 获取链接元素的边界信息
			var rect = this.getBoundingClientRect();

			// 发送 HTTP 请求到链接的 href
			fetch(href).then(function(response) {
				// 将响应的内容转换为文本
				return response.text();
			}).then(function(text) {
				// 创建一个新的 DOMParser
				var parser = new DOMParser();
				// 使用 DOMParser 解析响应的 HTML
				var doc = parser.parseFromString(text, 'text/html');
				// 获取 id 为 'nsk-body-left' 的元素的内容
				var content = doc.getElementById('nsk-body-left').innerHTML;
				// 更新 hoverBox 的内容和位置,并显示它
				hoverBox.innerHTML = content;
				hoverBox.style.left = rect.left + 'px'; // 使用链接元素的左边界作为 hoverBox 的 left
				hoverBox.style.top = (rect.bottom + window.scrollY) + 'px'; // 使用链接元素的下边界作为 hoverBox 的 top
				hoverBox.style.display = 'block';
				// 禁用主页面的滚动
				document.body.style.overflow = 'hidden';
			}).
			catch(function(error) {
				// 如果发生错误,显示错误信息
				hoverBox.textContent = 'Error: ' + error;
				hoverBox.style.left = rect.left + 'px'; // 使用链接元素的左边界作为 hoverBox 的 left
				hoverBox.style.top = (rect.bottom + window.scrollY) + 'px'; // 使用链接元素的下边界作为 hoverBox 的 top
				hoverBox.style.display = 'block';
				// 禁用主页面的滚动
				document.body.style.overflow = 'hidden';
			});
		});
	});

  // 鼠标挪开时隐藏 hoverBox
  // document.addEventListener('mouseout',

  // 点击 hoverBox 外部时隐藏 hoverBox
	document.addEventListener('click',
	function(event) {
		if (!hoverBox.contains(event.target)) {
			hoverBox.style.display = 'none';
			// 启用主页面的滚动
			document.body.style.overflow = 'auto';
		}
	});

})();

  • match改成这个就可以识别了,edge

  • 第一个鸡腿 我给的

  • ac32 哈哈出品值得信赖

  • ac17 吃上了,好高效率啊 ac16

  • @qththq #45

    啊,分离滑动我搞不定,我一会去问问gpt,

  • 反手就是一个鸡腿 xhj016

  • 666xhj003

  • 直接鸡腿奉上

  • 脚本神

  • 鸡腿+1

  • 6666

  • 试试

  • make

  • 加个鸡腿,鼓励奉献mjj精神

你好啊,陌生人!

我的朋友,看起来你是新来的,如果想参与到讨论中,点击下面的按钮!

📈用户数目📈

目前论坛共有72192位seeker

🎉欢迎新用户🎉