mirror of
https://git.mirrors.martin98.com/https://github.com/cilame/v_jstools
synced 2025-07-05 04:05:12 +08:00
add
This commit is contained in:
parent
cffd979c14
commit
ec70ab3005
25
inject.js
25
inject.js
@ -1290,9 +1290,7 @@ function injectfunc(e, window) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
var toggle = true
|
var toggle = true
|
||||||
e.logtogglefunc = function(event){
|
function change_toggle(toggle){
|
||||||
if (event.key == 'w' && event.altKey){
|
|
||||||
toggle = !toggle
|
|
||||||
e["config-hook-domobj"] = toggle
|
e["config-hook-domobj"] = toggle
|
||||||
e["config-hook-Function"] = toggle
|
e["config-hook-Function"] = toggle
|
||||||
e["config-hook-eval"] = toggle
|
e["config-hook-eval"] = toggle
|
||||||
@ -1307,6 +1305,21 @@ function injectfunc(e, window) {
|
|||||||
e["config-hook-encodeURIComponent"] = toggle
|
e["config-hook-encodeURIComponent"] = toggle
|
||||||
e["config-hook-escape"] = toggle
|
e["config-hook-escape"] = toggle
|
||||||
e["config-hook-unescape"] = toggle
|
e["config-hook-unescape"] = toggle
|
||||||
|
e["config-hook-JSON.parse"] = toggle
|
||||||
|
e["config-hook-JSON.stringify"] = toggle
|
||||||
|
e["config-hook-decodeURI"] = toggle
|
||||||
|
e["config-hook-decodeURIComponent"] = toggle
|
||||||
|
e["config-hook-encodeURI"] = toggle
|
||||||
|
e["config-hook-encodeURIComponent"] = toggle
|
||||||
|
e["config-hook-escape"] = toggle
|
||||||
|
e["config-hook-unescape"] = toggle
|
||||||
|
e["config-hook-atob"] = toggle
|
||||||
|
e["config-hook-btoa"] = toggle
|
||||||
|
}
|
||||||
|
e.logtogglefunc = function(event){
|
||||||
|
if (event.key == 'w' && event.altKey){
|
||||||
|
toggle = !toggle
|
||||||
|
change_toggle(toggle)
|
||||||
if (toggle){
|
if (toggle){
|
||||||
window.v_log('开启日志')
|
window.v_log('开启日志')
|
||||||
}else{
|
}else{
|
||||||
@ -1650,6 +1663,7 @@ var hookers = [
|
|||||||
"config-hook-log-at",
|
"config-hook-log-at",
|
||||||
"config-myinject",
|
"config-myinject",
|
||||||
"config-myinject_toggle",
|
"config-myinject_toggle",
|
||||||
|
"config-hook-log-toggle",
|
||||||
]
|
]
|
||||||
function add_config_hook(input){
|
function add_config_hook(input){
|
||||||
for (var i = 0; i < input.length; i++) {
|
for (var i = 0; i < input.length; i++) {
|
||||||
@ -1697,7 +1711,12 @@ chrome.storage.local.get(hookers, function (result) {
|
|||||||
var replacer_injectfunc = (injectfunc + '').replace('$domobj_placeholder', make_domhooker_funcs())
|
var replacer_injectfunc = (injectfunc + '').replace('$domobj_placeholder', make_domhooker_funcs())
|
||||||
var replacer_injectfunc = replacer_injectfunc.replace('$make_v_func', make_v+';')
|
var replacer_injectfunc = replacer_injectfunc.replace('$make_v_func', make_v+';')
|
||||||
result["config-hook-cookie-match"] = (result["config-hook-cookie-match"] || '').trim()
|
result["config-hook-cookie-match"] = (result["config-hook-cookie-match"] || '').trim()
|
||||||
|
var log_toggle = result["config-hook-log-toggle"]
|
||||||
|
delete result["config-hook-log-toggle"] // 分两次注入是因为要保证第一次注入的代码是不变的,这样可以直接在代码处打断点
|
||||||
inject_script(code_hookdom = `(${replacer_injectfunc})(${JSON.stringify(result)},window)`);
|
inject_script(code_hookdom = `(${replacer_injectfunc})(${JSON.stringify(result)},window)`);
|
||||||
|
if(!log_toggle){
|
||||||
|
inject_script(`globalConfig.logtogglefunc({key:'w',altKey:true})`)
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if (result["config-myinject_toggle"]){
|
if (result["config-myinject_toggle"]){
|
||||||
var myinject = result["config-myinject"]
|
var myinject = result["config-myinject"]
|
||||||
|
@ -129,11 +129,17 @@
|
|||||||
<input type="checkbox" data-key="config-myinject_toggle"><div class="slider"></div>
|
<input type="checkbox" data-key="config-myinject_toggle"><div class="slider"></div>
|
||||||
</label>
|
</label>
|
||||||
<div style="float: right; padding: 10px">是否启用注入代码</div>
|
<div style="float: right; padding: 10px">是否启用注入代码</div>
|
||||||
|
<label class="switch">
|
||||||
|
<input type="checkbox" data-key="config-hook-log-toggle"><div class="slider"></div>
|
||||||
|
</label>
|
||||||
|
<div style="float: right; padding: 10px">开关输出日志</div>
|
||||||
<div>
|
<div>
|
||||||
<button id="showoptions" class="button" style="vertical-align:middle"><span>打开配置页面</span></button>
|
<button id="showoptions" class="button" style="vertical-align:middle"><span>打开配置页面</span></button>
|
||||||
<button id="addlistener" class="button2" style="vertical-align:middle"><span>生成临时环境</span></button>
|
<button id="addlistener" class="button2" style="vertical-align:middle"><span>生成临时环境</span></button>
|
||||||
<button id="logtoggle" class="button2" style="vertical-align:middle"><span>开关输出日志</span></button>
|
<!-- <button id="logtoggle" class="button2" style="vertical-align:middle"><span>开关输出日志</span></button> -->
|
||||||
<button id="clone_page" class="button2" style="vertical-align:middle"><span>拷贝当前页面</span></button>
|
<button id="clone_page" class="button2" style="vertical-align:middle"><span>拷贝当前页面</span></button>
|
||||||
|
<hr>
|
||||||
|
<button id="update_page" class="button2" style="vertical-align:middle"><span>工具更新地址</span></button>
|
||||||
</div>
|
</div>
|
||||||
<script src="popup.js"></script>
|
<script src="popup.js"></script>
|
||||||
</body>
|
</body>
|
||||||
|
31
popup.js
31
popup.js
@ -10,11 +10,18 @@ document.querySelectorAll("input").forEach(function(v){
|
|||||||
v.addEventListener("change", function (e) {
|
v.addEventListener("change", function (e) {
|
||||||
if (v.type == 'checkbox'){
|
if (v.type == 'checkbox'){
|
||||||
// console.log(e.target.dataset.key, e.target.checked)
|
// console.log(e.target.dataset.key, e.target.checked)
|
||||||
if (e.target.dataset.key == 'config-hook-global' && e.target.checked){
|
if (e.target.dataset.key == 'config-hook-global'){
|
||||||
|
if (e.target.checked){
|
||||||
chrome.browserAction.setBadgeText({text: 'v'});
|
chrome.browserAction.setBadgeText({text: 'v'});
|
||||||
}else{
|
}else{
|
||||||
chrome.browserAction.setBadgeText({text: ''});
|
chrome.browserAction.setBadgeText({text: ''});
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
if (e.target.dataset.key == 'config-hook-log-toggle'){
|
||||||
|
chrome.tabs.query({active: true, currentWindow: true}, function(tabs){
|
||||||
|
chrome.tabs.sendMessage(tabs[0].id, {action: {type:'logtoggle', info: 'logtoggle'}}, function(response) {});
|
||||||
|
});
|
||||||
|
}
|
||||||
chrome.storage.local.set({
|
chrome.storage.local.set({
|
||||||
[e.target.dataset.key]: e.target.checked
|
[e.target.dataset.key]: e.target.checked
|
||||||
})
|
})
|
||||||
@ -61,11 +68,11 @@ hook-domobj-显示func输出
|
|||||||
})
|
})
|
||||||
})
|
})
|
||||||
|
|
||||||
document.getElementById('logtoggle').addEventListener('click', function(e){
|
// document.getElementById('logtoggle').addEventListener('click', function(e){
|
||||||
chrome.tabs.query({active: true, currentWindow: true}, function(tabs){
|
// chrome.tabs.query({active: true, currentWindow: true}, function(tabs){
|
||||||
chrome.tabs.sendMessage(tabs[0].id, {action: {type:'logtoggle', info: 'logtoggle'}}, function(response) {});
|
// chrome.tabs.sendMessage(tabs[0].id, {action: {type:'logtoggle', info: 'logtoggle'}}, function(response) {});
|
||||||
});
|
// });
|
||||||
})
|
// })
|
||||||
|
|
||||||
const bg = chrome.extension.getBackgroundPage()
|
const bg = chrome.extension.getBackgroundPage()
|
||||||
document.getElementById('clone_page').addEventListener('click', function(e){
|
document.getElementById('clone_page').addEventListener('click', function(e){
|
||||||
@ -83,3 +90,15 @@ document.getElementById('clone_page').addEventListener('click', function(e){
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
})
|
})
|
||||||
|
|
||||||
|
document.getElementById('update_page').addEventListener('click', function(e){
|
||||||
|
function closePopup() {
|
||||||
|
window.close();
|
||||||
|
document.body.style.opacity = 0;
|
||||||
|
setTimeout(function() { history.go(0); }, 300);
|
||||||
|
}
|
||||||
|
closePopup()
|
||||||
|
chrome.tabs.create({
|
||||||
|
url: 'https://github.com/cilame/v_jstools',
|
||||||
|
});
|
||||||
|
})
|
Loading…
x
Reference in New Issue
Block a user