私は、利用可能であるか使用不可であるかを変更するために、個々の日をクリックできる動的カレンダーに取り組んでいます。それは、別の月または年を選択するまで、それが想定されるように機能します。それが起こると、個々のセル/日の「クリック」イベントは機能しません。ここでjQuery cssカレンダーの選択した月の変更後に「クリック」が機能しない
// Changes cell background of the calendar
var changeColor = function(temp) {
// if cell background is white -> change to green
if(temp.css('background-color') == "rgba(0, 0, 0, 0)") {
temp.css('background-color', 'green');
// if cell background is green -> change to red
} else if (temp.css('background-color') == "rgb(0, 128, 0)") {
temp.css('background-color', 'red');
} else {
// else change back to white
temp.css('background-color', '');
}
};
それは
$(document).ready(function() {
// When a date-cell is clicked - changes color to green -> red -> white
$(".calCell:not(.empty)").click(function() {
changeColor($(this));
});
});
を使用しています赤や緑に全体のカレンダーを変更する2つのボタンが選択され、各月で正常に動作するようには思えましたさ。
// When Available button is click -> changes whole calendar to available
$("#yes").on("click", function() {
$(".calCell:not(.empty)").css('background-color', 'green');
});
// When Unavailable button is clicked -> changes whole calendar to unavailable
$("#no").on("click", function() {
$(".calCell:not(.empty)").css('background-color', 'red');
});
例: JS Fiddle
私はDOMの変更を考慮しませんでした。あなたはそれを言うと今や完全な意味になります。 '.change()'が '.click()'よりも論理的であるため、私はその理由で迷っていますか?私が研究したところからは、キーボードの使用から特定のブラウザまでさまざまな理由がありますが、それが私のコードでロジックに当てはまるかどうかは分かりません。 ご協力いただきありがとうございます。 –