私の最後の質問は、十分に明確ではないため閉じられました。これが起こらないように、ここで詳しく説明します。
4 つのボタンを含む popup.html があります。アイコンをクリックすると、特定のページで発生する必要があり、popup.html がポップアップします。各ボタンをクリックして、アクティブなタブのそのページの各ボタンに対して実行する特定の JavaScript コードが必要です。
関数を実行するためだけに popup.html "http://cnn.com' onclick='alert("test");'>" でこれを試しましたが、うまくいきません。このサイトまたはGoogle devの例で、このタスクを完了するための特定のコードが見つかりませんでした。
基本的に、「popup.html」ページに表示されるボタンの場合、「javascript:document.getElementById(%22forwardbutton%22).click();」を実行するには、この JavaScript が必要です。
または、「javascript: var auto = { names : '0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 1 2 3 4 のような他の関数の 1 つ5 6 7 8 9', 宣伝文: '0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9', password : 'secret', fillup : function () { var all_inputs = document.getElementsByTagName('input'); [...] next.click();"
現在、ブックマーク メニューの「ブックマーク」からそのコードを実行していますが、パッケージ化された拡張機能に組み込みたいと考えていました。
それが十分に明確であることを願っています。私が抱えている主な問題は、コードを実行できることです。ボタンをクリックしてアクティブなタブで「機能」を実行できるようになると、残りの部分を理解できるようになります。十分に近いサンプル コード サイトを教えていただければ、非常に役立ちます。質問して申し訳ありませんが、検索したリソースではわかりません。
前もって感謝します!
編集:これは私が実行する必要がある私の機能です。ここにコードがありますが、実行されません。
document.addEventListener('DOMContentLoaded', function () {
var divs = document.getElementById('ADD');
divs.addEventListener('click', ADD);
});
function ADD(e) {
var auto = {
names: '0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9',
blurb: '0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9',
password: 'secret',
fillerup: function () {
var all_inputs = document.getElementsByTagName('input');
var all_selects = document.getElementsByTagName('select');
var all_textareas = document.getElementsByTagName('textarea');
var textflag = this.getRand(1);
for (var i = 0, max = all_selects.length; i < max; i) {
var sel = all_selects[i];
if (sel.selectedIndex != -1 && sel.options[sel.selectedIndex].value) {
continue;
}
var howmany = 1;
if (sel.type == 'select-multiple') {
var howmany = 1 this.getRand(sel.options.length - 1);
}
for (var j = 0; j < howmany; j) {
var index = this.getRand(sel.options.length - 1);
sel.options[index].selected = 'selected';
}
}
for (var i = 0, max = all_textareas.length; i < max; i) {
var ta = all_textareas[i];
var flag = this.getRand(1);
if (ta.value) {
ta.value = "";
continue;
} else {
ta.value = this.getRandomString(10)
'\n\n'
this.getRandomString(10);
}
}
for (var i = 0, max = all_inputs.length; i < max; i) {
var inp = all_inputs[i];
var type = inp.getAttribute('type');
var id = inp.getAttribute('id');
if (!type) {
type = 'text';
}
if (type == 'checkbox') {
var flag = this.getRand(1);
if (flag) {
inp.setAttribute('checked', 'checked');
} else {
inp.removeAttribute('checked');
}
}
}
for (var i = 0, max = all_inputs.length; i < max; i) {
var inp = all_inputs[i];
var type = inp.getAttribute('type');
var id = inp.getAttribute('id');
var flag = this.getRand(1);
if (type == 'text') {
if (!flag) {
inp.value = '';
continue;
}
if (inp.name.indexOf('name') != -1) {
inp.value = this.getRandomName()
' '
this.getRandomName();
} else if (inp.name.indexOf('email') != -1) {
inp.value = this.getRandomString(1)
'@example.org';
} else {
inp.value = this.getRandomString(1);
}
}
}
for (var i = 0, max = all_inputs.length; i < max; i) {
var inp = all_inputs[i];
var type = inp.getAttribute('type');
var id = inp.getAttribute('id');
var flag = this.getRand(1);
if (type == 'radio') {
var to_update = true;
var name = inp.name;
var input_array = inp.form.elements[inp.name];
if (to_update) {
var index = this.getRand(input_array.length - 1);
input_array[index].setAttribute('checked', 'checked');
}
}
}
},
getRandomString: function (how_many_words) {
if (!how_many_words) {
how_many_words = 2;
}
if (!this.words) {
this.words = this.blurb.split(' ');
}
var retval = '';
for (var i = 0; i < how_many_words; i) {
retval = this.words[this.getRand(this.words.length) - 1];
retval = (i < how_many_words - 1) ? ' ' : '';
}
return retval;
},
getRandomName: function () {
if (!this.split_names) {
this.split_names = this.names.split(' ');
}
return this.split_names[this.getRand(this.split_names.length) - 1];
},
getPassword: function () {
if (!this.password) {
this.password = 'secret';
}
return this.password;
},
getRand: function (count) {
return Math.round(count * Math.random());
}
};
auto.fillerup();
var next = document.getElementById(forwardbutton);
next.click();
}