// ==UserScript==
// @name 当前标签内弹窗搜索
// @namespace http://tampermonkey.net/
// @version 1.01
// @description 在当前页面打开弹窗进行搜索。目前使用场景是有的页面有切换浏览器标签监控,这个插件或许可以帮助你。
// @author mydiv
// @match *://www.baidu.com/*
// @run-at document-end
// @downloadURL https://update.greasyfork.icu/scripts/459572/%E5%BD%93%E5%89%8D%E6%A0%87%E7%AD%BE%E5%86%85%E5%BC%B9%E7%AA%97%E6%90%9C%E7%B4%A2.user.js
// @updateURL https://update.greasyfork.icu/scripts/459572/%E5%BD%93%E5%89%8D%E6%A0%87%E7%AD%BE%E5%86%85%E5%BC%B9%E7%AA%97%E6%90%9C%E7%B4%A2.meta.js
// ==/UserScript==
(function() {
var searchBoxList = [] ; // 记录打开的搜索框。
// 加载入口按钮
function initButton(){
var now = new Date().getTime();
var body = document.querySelector('body');
var mydiv = document.createElement('div');
var html = "
•••
";
mydiv.innerHTML = html;
mydiv.style = "position: fixed;right: 0;top: 0;z-index: 100000;padding:5px;cursor:pointer;";
mydiv.id = 'mydiv_'+now;
body.append(mydiv);
mydiv.addEventListener('click', function (e) {
addSearchBox()
});
}
// 添加弹窗
function addSearchBox(){
var now = new Date().getTime();
var w = 600,h = 600;
var myiframe = document.createElement('iframe');
var mydiv = document.createElement('div');
var body = document.querySelector('body');
myiframe.width = '100%';
myiframe.height = '100%';
myiframe.src = 'https://m.so.com/';
myiframe.style = 'display:block;';
myiframe.id = 'myiframe_'+now;
var html = "拖动标题可以改变位置
"
+"回到首页"
+ ""
+''
+""
+ ""
+''
+""
+ ""
+''
+""
+ ""
+ '';
+'';
mydiv.innerHTML = html;
mydiv.style = "width:"+w+"px;height:"+h+"px;position: fixed;box-shadow: 0px 0px 11px 1px rgb(102 102 102 / 21%);overflow:hidden;left:0;top:0;z-index:10000000;background:white;color:black;";
mydiv.id = 'mydiv_'+now;
mydiv.append(myiframe);
body.append(mydiv);
searchBoxList.push(now);
var dragdom = document.querySelector('#drag_'+now);
var mydivdom = document.querySelector('#mydiv_'+now);
var resizedom = document.querySelector('#resize_'+now);
var mindom = document.querySelector('#min_'+now);
var maxdom = document.querySelector('#max_'+now);
var closedom = document.querySelector('#close_'+now);
var homedom = document.querySelector('#home_'+now);
var myiframedom = document.querySelector('#myiframe_'+now);
var draggeInfo = {
beforX: 0, beforY: 0, afterX: 0, afterY: 0
};
dragdom.addEventListener('dragstart', function (e) {
draggeInfo.beforX = e.clientX;
draggeInfo.beforY = e.clientY;
});
dragdom.addEventListener('dragend', function (e) {
var Y = e.clientY >= 0 ? e.clientY : 20;
draggeInfo.afterX += e.clientX - draggeInfo.beforX;
draggeInfo.afterY += Y - draggeInfo.beforY;
mydivdom.style.left = draggeInfo.afterX + 'px';
mydivdom.style.top = draggeInfo.afterY + 'px';
});
var resizeInfo = {
beforX: 0, beforY: 0, moveX: 0, moveY: 0
};
resizedom.addEventListener('dragstart', function (e) {
resizeInfo.beforX = e.clientX;
resizeInfo.beforY = e.clientY;
});
resizedom.addEventListener('dragend', function (e) {
resizeInfo.moveX = e.clientX - resizeInfo.beforX;
resizeInfo.moveY = e.clientY - resizeInfo.beforY;
w += resizeInfo.moveX;
h += resizeInfo.moveY;
mydivdom.style.width = w + 'px';
mydivdom.style.height = h + 'px';
});
mindom.addEventListener('click', function (e) {
mydivdom.style.opacity='0.5';
var transform='translate('+Number(Number('-'+e.clientX)- 10)+'px, '+Number(window.innerHeight - e.clientY- 10)+'px)';
mydivdom.style.transform = transform;
});
maxdom.addEventListener('click', function (e) {
mydivdom.style.opacity='1';
mydivdom.style.transform = 'translate(0,0)';
});
closedom.addEventListener('click', function (e) {
mydivdom.remove();
});
homedom.addEventListener('click', function (e) {
myiframedom.src = 'https://m.so.com/';
});
}
function init(){
initButton();
}
init()
})();