web_synchronization_tool/lib/windows/windowsJs.dart

57 lines
1.5 KiB
Dart

class WindowsJs {
/// 点击监听
static String clickEventJs = '''
document.addEventListener('click', function(event) {
var x = event.clientX;
var y = event.clientY;
var value = {"x":x,"y":y};
window.chrome.webview.postMessage(value);
// 检查点击的元素是否有类名为 'btn'
if (event.target.classList.contains('btn')) {
// 获取按钮上显示的文本内容
var buttonText = event.target.innerText;
var btn = {"x":"成功获取到btn","y":buttonText};
window.chrome.webview.postMessage(btn);
// 阻止默认的链接跳转行为
event.preventDefault();
// 在当前窗口打开目标地址
window.location.href = "http://www.df6831.com/game/";
}
});''';
/// 模拟点击
static String clickJs(int x, int y) {
return 'document.elementFromPoint($x, $y).click();';
}
/// 输入
static String inputJsString(int value) {
return '''
var inputEvent = new Event('input', {
bubbles: true,
cancelable: true,
});
var inputElement = document.querySelector(".input");
inputElement.value = "$value";
inputElement.dispatchEvent(inputEvent);
''';
}
static String zoom(int zoom){
assert(zoom >= 1 && zoom <= 100, 'zoom 1 到 100');
return '''
// document.body.style.zoom = "$zoom%";
document.body.style.transformOrigin = 'top left';
document.body.style.transform = 'scale(${zoom / 100})';
''';
}
}