web_synchronization_tool/lib/windows/windowsJs.dart

82 lines
2.2 KiB
Dart
Raw Normal View History

2024-04-01 21:41:42 +08:00
class WindowsJs {
/// 点击监听
static String clickEventJs = '''
2024-04-02 11:02:06 +08:00
document.addEventListener("click", function (event) {
var x = event.clientX;
var y = event.clientY;
var click = { 'x': x, 'y': y };
// var value = { click: click };
// 发送消息
window.chrome.webview.postMessage(click);
// 检查点击的元素是否有类名为 'btn'
if (event.target.classList.contains("btn")) {
2024-04-01 21:41:42 +08:00
// 获取按钮上显示的文本内容
var buttonText = event.target.innerText;
2024-04-02 11:02:06 +08:00
if (buttonText == "进入游戏") {
var btn = { x: "成功获取到btn", y: buttonText };
window.chrome.webview.postMessage(btn);
// 阻止默认的链接跳转行为
event.preventDefault();
var newUrl = this.href; // 获取点击链接的跳转地址
// 在当前窗口打开目标地址
// window.location.href = "http://www.df6831.com/game/";
window.location.href = newUrl;
window.chrome.webview.postMessage({url:newUrl}});
}
2024-04-01 21:41:42 +08:00
}
2024-04-02 11:02:06 +08:00
});
''';
2024-04-01 21:41:42 +08:00
/// 模拟点击
2024-04-02 11:02:06 +08:00
static String clickJs(double x, double y) {
2024-04-01 21:41:42 +08:00
return 'document.elementFromPoint($x, $y).click();';
}
/// 输入
2024-04-02 11:02:06 +08:00
static String inputJs(int value) {
2024-04-01 21:41:42 +08:00
return '''
var inputEvent = new Event('input', {
bubbles: true,
cancelable: true,
});
2024-04-02 11:02:06 +08:00
var inputElement = document.querySelector(".bet-money");
2024-04-01 21:41:42 +08:00
inputElement.value = "$value";
inputElement.dispatchEvent(inputEvent);
''';
}
2024-04-02 11:02:06 +08:00
/// 监听加载,在加载完成后缩放
static String onloadScale(int scale){
assert(scale >= 1 && scale <= 100, 'zoom 1 到 100');
return '''
window.onload = function () {
// 修改页面缩放比例为0.550%
document.body.style.transformOrigin = 'top left';
document.body.style.transform = 'scale(${scale / 100})';
};
''';
}
/// 修改缩放
static String scale(int scale){
assert(scale >= 1 && scale <= 100, 'zoom 1 到 100');
2024-04-01 21:41:42 +08:00
return '''
2024-04-02 11:02:06 +08:00
// document.body.style.zoom = "$scale%";
2024-04-01 21:41:42 +08:00
document.body.style.transformOrigin = 'top left';
2024-04-02 11:02:06 +08:00
document.body.style.transform = 'scale(${scale / 100})';
2024-04-01 21:41:42 +08:00
''';
}
2024-04-02 11:02:06 +08:00
static String message = 'window.chrome.webview.postMessage({x:3333}});';
2024-04-01 21:41:42 +08:00
}