Google Chrome Extensionで次のJavaScriptを使用して、nike.comでスニーカーを購入するための「カートに追加」プロセスを自動化しています。JavaScriptの変数の宣言と設定
var size_i_want = "11";
function fRun()
{enter code here
// Select size option.
var sizesList=document.getElementsByName("skuAndSize")[0];
for(var i=0; i<sizesList.length; i++)
{
if(sizesList.options[i].text.trim() == size_i_want)
{
sizesList.selectedIndex = i;
}
}
var aButtons = document.getElementsByTagName("button");
for(var i = 0; i < aButtons.length; ++i)
{
if(aButtons[i].className.indexOf("add-to-cart") > -1)
{
aButtons[i].click();
}
}
}
function fTick()
{
if(document.getElementsByName("skuAndSize")[0] != undefined)
{
setTimeout("fRun()", 600);
//fRun();
}else{
setTimeout("fTick()", 300);
}
}
setTimeout("fTick()", 300);
このスクリプトは、アメリカでnike.comのために完璧に動作、しかし、英国やスウェーデンなどの他の国でナイキのウェブサイトでは正しく動作しません。
おそらく私はJavaScriptを初めて使い慣れていると言えますが、言語を理解するためには高低を調べています。しかし、私は、これはしかし、これが影響するノードは、たとえば「英国10.5」のために、文字が含まれているナイキ英国のウェブサイトに
var size_i_want = "11";
値は整数(数)として設定されているという事実にダウンしています理解しています。
誰かが新しい変数を宣言し、それに文字と数字の両方を含むように値を設定するのを手伝ってもらえますか?私もこのことがスクリプトにも影響すると感じているので、その周辺のヘルプも非常に高く評価されています。
指定した情報では不可能です。このスクリプトは、HTMLドキュメントに基づいています。このHTMLドキュメントは、画面に表示されたものや入力されたものに基づいて値を取得します。書面には書類を提出していません。また、この文字列がコードの後半でどのように使用されているかを知っていて、それを変更すると、あなたが記述する方法でサービスが中断されます。さらにSOは、他人にあなたのためにコードを書くように依頼するサイトではなく、本質的にあなたが求めているものです。私のアドバイスは、あなたの会社のプログラマーがこれを担当し、そのプログラマーに協力してください。 – Igor
答えの前半をありがとうが、残りは必要ありませんでした。コメントに使った言葉の量は、おそらく私が必要としているかもしれないコードの量よりも多いでしょう。 – done
"これは、' var size_i_want = "11" '"という事実にまでわかります。私はそれがはるかに可能性が高いという事実は、異なるサイトは異なるレイアウトを持っているので、おそらく 'document.getElementsByName(" skuAndSize ")[0];'は動作しないと主張します。 – apokryfos