这第一个代码是模拟了手动输入的动作吗我看到对文本框用了focus 和dispatchEventnew Eventinput bubbles true ;来模拟手动输入的动作: function clicktxt2img var button1Skip = documentbodyquerySelector#txt2img_skip; var button1Skip
你可以像前面的代码一样使用 .focus() 和 dispatchEvent() 来模拟手动输入。下面是修改后的代码:
function loadImage(src) { var img = new Image(); img.onload = function () { var ratio = img.width / img.height; imgOriginalWidth.value = img.width; imgOriginalHeight.value = img.height; imgOriginalWidth.oninput = function () { imgOriginalHeight.value = Math.round(imgOriginalWidth.value / ratio); console.log(imgOriginalHeight.value); gradioApp().querySelector("#txt2img_width input").value = imgOriginalWidth.value; gradioApp().querySelector("#txt2img_width input").focus(); gradioApp().querySelector("#txt2img_width input").dispatchEvent(new Event("input", { bubbles: true })); gradioApp().querySelector("#txt2img_width input").parentNode.parentNode.nextElementSibling.value = imgOriginalWidth.value; gradioApp().querySelector("#txt2img_width input").parentNode.parentNode.nextElementSibling.focus(); gradioApp().querySelector("#txt2img_width input").parentNode.parentNode.nextElementSibling.dispatchEvent(new Event("input", { bubbles: true })); gradioApp().querySelector("#txt2img_height input").value = imgOriginalHeight.value; gradioApp().querySelector("#txt2img_height input").focus(); gradioApp().querySelector("#txt2img_height input").dispatchEvent(new Event("input", { bubbles: true })); gradioApp().querySelector("#txt2img_height input").parentNode.parentNode.nextElementSibling.value = imgOriginalHeight.value; gradioApp().querySelector("#txt2img_height input").parentNode.parentNode.nextElementSibling.focus(); gradioApp().querySelector("#txt2img_height input").parentNode.parentNode.nextElementSibling.dispatchEvent(new Event("input", { bubbles: true })); }; imgOriginalHeight.oninput = function () { imgOriginalWidth.value = Math.round(imgOriginalHeight.value * ratio); console.log(imgOriginalWidth.value); gradioApp().querySelector("#txt2img_width input").value = imgOriginalWidth.value; gradioApp().querySelector("#txt2img_width input").focus(); gradioApp().querySelector("#txt2img_width input").dispatchEvent(new Event("input", { bubbles: true })); gradioApp().querySelector("#txt2img_width input").parentNode.parentNode.nextElementSibling.value = imgOriginalWidth.value; gradioApp().querySelector("#txt2img_width input").parentNode.parentNode.nextElementSibling.focus(); gradioApp().querySelector("#txt2img_width input").parentNode.parentNode.nextElementSibling.dispatchEvent(new Event("input", { bubbles: true })); gradioApp().querySelector("#txt2img_height input").value = imgOriginalHeight.value; gradioApp().querySelector("#txt2img_height input").focus(); gradioApp().querySelector("#txt2img_height input").dispatchEvent(new Event("input", { bubbles: true })); gradioApp().querySelector("#txt2img_height input").parentNode.parentNode.nextElementSibling.value = imgOriginalHeight.value; gradioApp().querySelector("#txt2img_height input").parentNode.parentNode.nextElementSibling.focus(); gradioApp().querySelector("#txt2img_height input").parentNode.parentNode.nextElementSibling.dispatchEvent(new Event("input", { bubbles: true })); }; }; img.src = src;
原文地址: http://www.cveoy.top/t/topic/fpG8 著作权归作者所有。请勿转载和采集!