私はマウスを使って反応し、彩度を増減する2つのdivを作成しようとしています。ここに私の問題への短いフィドルは次のとおりです。 https://jsfiddle.net/ds6w5uwj/jqueryハンドラで1つの関数が2度目に呼び出されないのはなぜですか?
$(document).ready(function() {
var oldbgc;
oldbgc = void 0;
return $(document.body).on('click', '.prio-step', function() {
var bg, newbgc;
alert("color recalc started");
bg = $(this).css('background-color');
oldbgc = rgb2hex(bg); //This line is only executed in the very first run
newbgc = applySaturationToHexColor(oldbgc, 30);
return $(this).css({
backgroundColor: newbgc
});
});
});
使用すると、1つのdivに最初の時間をクリックすると、rgb2hex(BG)が呼び出されると、正しい値がoldbgcに書き込まれます。しかし、あなたが再度divをクリックすると、スクリプトはNaNエラーにつながる特定の行をスキップします。 私はapplySaturationToHexColor(...)
とrgb2hex(...)
の両方の機能を、対応する質問の先頭の回答としてstackoverflow.comで見つけました。
'console.log(bg)' – epascarello
なぜ空き0ですか?あなたは定義されていない、ヌル、0または他の値を使用することができます... –
ありがとう、@ジョナス、残念ながら、それは私の問題に何の違いもありません... :( – LoiBer