私は関数を呼び出すクリックハンドラを作ろうとしています。その関数は文字列を取得し、基本的に最後の文字をスライスして前面に追加し、再度クリックするたびに最後の文字を前面に追加します。clickイベントのJavascript on else文または変数を読み取らない
まず、配列メソッドを使用してやることができると思ったのはとても簡単です。
function scrollString() {
var defaultString = "Learning to Code Javascript Rocks!";
var clickCount = 0;
if (clickCount === 0) {
var stringArray = defaultString.split("");
var lastChar = stringArray.pop();
stringArray.unshift(lastChar);
var newString = stringArray.join('');
clickCount++;
} else {
var newArray = newString.split("");
var newLastChar = newArray.pop();
newArray.unshift(newLastChar);
var newerString = newArray.join("");
clickCount++;
}
document.getElementById('Result').innerHTML = (clickCount === 1) ? newString : newerString;
}
$('#button').on('click', scrollString);
今すぐクリックすると動作します。開発ツールでは、newArrayは定義されていません。また、clickCountはインクリメントを停止します。私はそれが範囲の問題であるかどうか、あるいは私が問題に対して全く異なるアプローチをとるべきかどうかはわかりません。
この答えは私のものよりもはるかに優れています。 upvoteを取る。私は実際にこの部分を行うにはあまりにも怠惰でした。非常に素晴らしい。 – thesublimeobject
ありがとう、私はそれを感謝する! – Gacci
シンプルなおい、おかげさま....私はまだコードを学んでいるので、私はプロセスをoverthoughtと思う:) – giovannihr