
저는 크롬을 사용합니다. 일부 사이트에서는 다양한 분야에 대한 엄청난 수의 항목을 기억하는 것 같습니다. 나는 그것이 매우 편리하다고 생각합니다. 그러나 일부 사이트에서는 제대로 작동하지 않습니다. 나를 미치게 만드는 한 가지 예는 AWS 콘솔에 있습니다. Lambda 함수를 업데이트할 때 S3에서 파일을 복사해야 합니다. 매번 다른 곳으로 가서 검색해야 하는 매우 긴 URL이 필요한 필드가 있습니다.
해당 필드의 HTML은 다음과 같습니다.
<input type="text" autocomplete="on" id="awsui-textfield-5"
class="awsui-textfield awsui-textfield-type-text">
때문에 autocomplete="on"
Chrome이 "올바른 일을 ™"할 것으로 기대하지만 아마도 필드가 그렇지 않기 때문일 수 있습니다 <form>
.
필드를 저장하려면 어떤 조건이 발생해야 합니까?
나는 웹사이트의 작은 불편함을 해결하기 위해 북마크릿이나 사용자 스크립트를 자주 만듭니다. 여기서 그렇게 하고 싶지만 무엇을 바꿔야 할지 모르겠습니다.
조언해주세요.
답변1
이번 사건 하나로 해결했어요! 나는 이 해결책이 아마도 다른 많은 사람들에게도 적용될 것이라고 생각합니다. 나는 만들었습니다북마크릿그리고 "개발자 도구" 콘솔에 붙여넣을 수 있는 자바스크립트 덩어리입니다.
var jq_tag=document.createElement('script');
jq_tag.setAttribute('src','//cdnjs.cloudflare.com/ajax/libs/jquery/3.2.0/jquery.min.js');
document.head.appendChild(jq_tag);
setTimeout(function() {
var tf=$(document.activeElement);
var ff=$('<form method="post" target="_blank" action="//example.com"><input type="submit" value="Save this field data"></form>');
tf.after(ff);
ff.prepend(tf);
}, 2000);
보다 일반적인 용도로 사용하기 위해 의도적으로 해당 텍스트 필드에 커서가 있어야 합니다. JS를 실행하면 필드 뒤에 "이 필드 데이터 저장" 버튼이 나타납니다.
다음은 한 줄씩 수행되는 작업을 분석한 것입니다.
# Create a script tag in memory.
# Make it source jQuery.
# Attach it to do the <head> of the document which begins loading it.
# Barbaric workaround for waiting for the JS to load.
# Get the element that has focus.
# Create a form that will POST to example.com in a new tab.
# Attach the form to the DOM right after the "focused element".
# Detach the "focused element" and reattach it inside the new form element.
답변2
이것이 양식 기록 제어(II)와 어떻게 비교됩니까? https://chromewebstore.google.com/detail/form-history-control-ii/lpcccgcdjibejkgiaeijbmkpbnbkglkb