百度拜拜。功能 1、搜索时排除百家号、CSDN; 2、阻止搜索框占位关键词推广;
目前為
// ==UserScript==
// @name bye-dude
// @namespace https://greasyfork.org/users/866159
// @version 0.0.3
// @description 百度拜拜。功能 1、搜索时排除百家号、CSDN; 2、阻止搜索框占位关键词推广;
// @author Song
// @match *://www.baidu.com
// @match *://www.baidu.com/s?*
// @icon https://www.baidu.com/favicon.ico
// @license MIT
// @grant none
// ==/UserScript==
(function () {
'use strict';
// -(site:baijiahao.baidu.com)
const excludeSites = ['baijiahao.baidu.com','csdn.net'];
const ignoreWords = ['假期', '放假', '万年历'];
function beforeSubmit() {
const input = document.querySelector('#kw');
input.addEventListener('focus', () => {
let w = input.value;
if (w.length > 7) {
excludeSites.forEach(s => {
w = w.replaceAll(` -site:${s}`, '');
});
console.info('focus 处理后', w)
input.value = w;
} else {
console.info('focus value', w.length, w)
}
});
document.querySelector('#form')
.addEventListener('submit', event => {
const w = input.value;
for (let word of ignoreWords) {
if (w.indexOf(word) > -1) {
return;
}
}
const sites = excludeSites.map(s => `-site:${s}`).filter(s => w.indexOf(s) < 0);
if (sites.length > 0) {
input.value = w.trim() + ' ' + sites.join(' ');
}
}, {capture: true});
}
function clearPlace() {
const input = document.querySelector('#kw');
input.placeholder = '';
Object.defineProperty(input, 'placeholder', {
set(value) {
console.info('prevent set placeholder to', value)
},
get() {
return '';
}
})
}
clearPlace();
beforeSubmit();
})();