知乎屏蔽搜索框默认提示篡改猴脚本
屏蔽知乎搜索框内的热搜建议和占位文字
// ==UserScript==
// @name 屏蔽知乎搜索建议
// @namespace http://tampermonkey.net/
// @version 1.1
// @description 屏蔽知乎搜索框内的热搜建议和占位文字
// @author NGC13009
// @match *://*.zhihu.com/*
// @grant none
// @run-at document-start
// ==/UserScript==
(function() {
'use strict';
// 1. 通过 CSS 屏蔽下拉菜单(最彻底,防止闪烁)
const style = document.createElement('style');
style.innerHTML = `
/* 隐藏搜索建议下拉框 */
.SearchBar-menu,
.AutoComplete-menu,
.Popover-content.SearchBar-content {
display: none !important;
visibility: hidden !important;
height: 0 !important;
opacity: 0 !important;
pointer-events: none !important;
}
`;
document.head.appendChild(style);
// 2. 清除输入框占位符 (Placeholder)
const clearPlaceholder = () => {
// 根据你提供的 ID 和类名定位
const selectors = [
'#Popover1-toggle',
'.SearchBar-input input',
'input[role="combobox"]'
];
selectors.forEach(selector => {
const el = document.querySelector(selector);
if (el && el.placeholder !== "") {
el.placeholder = ""; // 将建议词设为空
// 禁用自动完成属性
el.setAttribute('autocomplete', 'off');
}
});
};
// 使用 MutationObserver 监听 DOM 变化,防止知乎在页面跳转后重新注入建议
const observer = new MutationObserver((mutations) => {
clearPlaceholder();
});
// 开始监听
observer.observe(document.documentElement, {
childList: true,
subtree: true
});
// 页面加载完成后先执行一次
window.addEventListener('load', clearPlaceholder);
})();
