とHTMLでの画像のためのサイクリング変数のsrc属性を作るためにどのように私はこのコードを作っ:はJavaScriptを
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>
<!DOCTYPE html>
<html>
<body>
<h1> Some Traffic Lights</h1>
<div ng-app="myApp" ng-controller="myCtrl">
<img id="trafficLight" src="TLgre.png" />
<script>
var app = angular.module('myApp', []);
//*****Declaring Variables*****//
var lightSrcs = ['TLgre.png', 'TLyel.png', 'TLred.png'];
var cycleNumber = 0;
var Order = 0;
//*****Number Cycling Function*****//
function cycle() {
if (Order === 0) {
if (cycleNumber == 3) {
cycleNumber -= 1;
Order = 1;
} else {
cycleNumber += 1;
}
} else if (Order === 1) {
if (cycleNumber <= 0) {
cycleNumber += 1;
Order = 0;
} else {
cycleNumber -= 1;
}
}
return cycleNumber;
}
</script>
<button type="button" onclick="document.getElementById('trafficLight').src = lightSrcs[cycle()];">
Click to cycle lights</button>
</div>
</body>
</html>
をそして、それが動作しない理由を私は知りません。私はonclickイベントでJavaScriptを実行できないか、またはスクリプトタグから関数を使用することができなかったという2つの推測をしました。私の他の推測では、src属性を変数として与えることができず、むしろ奇妙に思えるかもしれません。おそらく私はなぜ混乱していますか?誰かが私に間違っていることを教えてもらえればそれはすばらしいだろう。私はそれを改善するための提案をすることができる。(私はちょっとAngularJSも知っている)、ただ一つ、三つの画像私は配列にしたい。なぜなら私の先生は、彼らがいなければならないと言いました。
より多くの角度ロジックを使用して、コントローラを設定し、角度ng-srcディレクティブを使用してこれを実現することができます。今、あなたは混在しており、プレーンjs domの選択と角度にマッチしています。あなたは簡単に純粋な角度でこのようなことをすることができますし、あなたはすでにアプリを設定している。 – ajmajmajma