キー ウィザードなどの自動化ツールを使用すると、多くのシナリオで多くのタスクを自動的に完了できるため、作業の効率が大幅に向上します。
この記事では次のことを説明します。 JavaScript を使用して「ボタン ウィザード」を実装し、クリック、フォーカス、入力、その他の操作の自動完了を示します。

上のアニメーションに示すように、次の操作がページ上で自動的に実行されます。
1. 2 つのボタンをクリックします。
2.
入力ボックスにフォーカスを設定します。
3. 入力ボックスにテキストを入力します。
リンク;
原理 複雑ではなく、要素を取得してクリック、フォーカスなどのイベントを実行するだけです。
2 つの問題があります:
1. ID と名前のない要素の場合、getElementById と getElementByName を使用できません。
解決方法は、querySelectorAll を使用してページ上のすべての要素を取得し、ソース コード マッチングを使用して要素を正確に見つけることです
。要素。コードは次のとおりです。

2. 遅延の設定方法: 場所をクリックした後、次の操作を実行するまで数秒待ちます。
解決策は、setTimeOut 関数とコールバック関数を使用することです。コードは次のとおりです。

前述の原則に従って、次のようにクリック、フォーカス、割り当て機能を準備します。

呼び出すときは、ソース コード、遅延値、およびコールバック関数を渡します。
つまり、指定されたソース コードの要素を操作し、一定時間遅延してからコールバック関数を実行します。

以下に示すように、ソース コード部分はページ ビューアーで取得できます。

ここに示されており、上記の例の完全なコードは html として保存して実行します。
<html>
<本文>
<スクリプト>
document.body.addEventListener("クリック", function(e) {
console.log('クリック:',e.originalTarget);
});
</script>
<h1>JS バージョン ボタン ウィザード</h1>
<div>
1. ボタン:<br>
<button style="width: 100px; height:100px;" onclick="alert('1 がクリックされました');">1</button>
<button style="width: 100px; height:100px;" onclick="alert('2 がクリックされました');">2</button>
<br>
<br>
2. 入力ボックス:
<input type="text" value="">
<br>
<br>
3. リンク: <a href="http://jshaman.com" target="iframe1">jshaman.com</a>
<br>
<iframe name="iframe1"></iframe>
</div>
<br>
<時間>
<button onclick="fun1();">自動実行を開始</button>
<br>
次の手順を順番に実行します。<br>
1. 最初と 2 番目のボタンをクリックします。 2. 入力ボックスにフォーカスを設定します。 3. 入力ボックスの値を設定します。 4. リンクをクリックします。
<br>
</body>
<スクリプト>
//クリックイベント//パラメータ:
//outer_html: クリックする要素のソースコード //lay: 遅延 //call_back: コールバック関数 function click(outer_html, late, call_back){
// ページのすべての要素を取得します var all_elements = document.querySelectorAll('*');
//要素を走査 for(i=0; i<all_elements.length; i++){
// 条件を満たす要素を照合 if(all_elements[i].outerHTML==outer_html){
// all_elements[i].click() をクリックします。
}
}
if(遅延&&コールバック){
//何ミリ秒経過後にコールバック関数 setTimeout(call_back, late) を実行
}
};
// フォーカスを設定します。つまり、 // パラメータを選択します。
//outer_html: 要素のソースコード //lay: 遅延 //call_back: コールバック関数 function focus(outer_html, late, call_back){
// ページのすべての要素を取得します var all_elements = document.querySelectorAll('*');
//要素を走査 for(i=0; i<all_elements.length; i++){
// 条件を満たす要素を照合 if(all_elements[i].outerHTML==outer_html){
// フォーカスを設定します all_elements[i].focus();
}
}
if(遅延&&コールバック){
//何ミリ秒経過後にコールバック関数 setTimeout(call_back, late) を実行
}
};
//コンテンツの設定関数 setvalue(outer_html, type, value, late, call_back){
// ページのすべての要素を取得します var all_elements = document.querySelectorAll('*');
//要素を走査 for(i=0; i<all_elements.length; i++){
// 条件を満たす要素を照合 if(all_elements[i].outerHTML==outer_html){
// all_elements[i][type] = value をクリックします。
}
}
if(遅延&&コールバック){
//何ミリ秒経過後にコールバック関数 setTimeout(call_back, late) を実行
}
};
// クリックボタン function fun1(){
//クリックされる要素のソースコード var inner_html = `<button style="width: 100px; height:100px;" onclick="alert('1 was clicked');">1</button>`;
click(outer_html, 1000, fun2);
}
// クリックボタン function fun2(){
//クリックされる要素のソースコード var inner_html = `<button style="width: 100px; height:100px;" onclick="alert('2 was clicked');">2</button>`;
click(outer_html, 1000, fun3);
}
//入力関数 fun3(){ のフォーカスと値を設定します。
//クリックされる要素のソースコード var external_html = `<input type="text" value="">`;
フォーカス(outer_html);
setvalue(outer_html,"value","abc",1000,call_back_function)
}
//リンクをクリック function call_back_function(){
var out_html = `<a href="http://jshaman.com" target="iframe1">jshaman.com</a>`;
クリック(out_html);
console.log("自動クリックが完了しました")
}
</script>
</html>オープンで透過的な、関数ロジックを簡単に理解でき、自由に変更することもできます。コードのセキュリティを向上させたい場合は、コードを暗号化して保護する必要があります。たとえば、専門的な JavaScript コード難読化暗号化ツールである JShaman を使用できます。上記の完全なソース コード内の JavaScript コードは、JShaman によって暗号化されると次の形式になりますが、その使用にはいかなる影響もありません。

注: 左側は元のコード、右側は暗号化されたコードです。
関連する推奨事項: [JavaScript ビデオ チュートリアル]
上記は、JavaScript を使用して「ボタン ウィザード」を実装する方法を説明するものです。詳細については、php 中国語 Web サイトの他の関連記事にご注目ください。