Sarah1991
Bitte stell mal deine Line-Endings im Editor auf Windows (CR LF) oder Unix LF um! https://de.wikipedia.org/wiki/Zeilenumbruch#ASCII
Dann sollte das kein Problem mehr darstellen..
Du kannst dir viel schreiben sparen..:
var month = new Array(
"Januar",
"Februar",
"März",
"April",
"Mai",
"Juni",
"Juli",
"August",
"September",
"Oktober",
"November",
"Dezember"
);
Alles anzeigen
Und versuche so viel wie möglich aus den schleifen (each und for) raus zu hauen und vorher einfach in eine variable zu speichern (z.b. musst du nicht jedes mal den text erneut auslesen, da es eh immer der gleiche ist, du musst dir auch nicht 1000 mal die monate neu in ne variable speichern, mach das alles vorher!
Und wenn du in eienr funct eine var definierst wirst du sie meistens in der anderen funkt nicht gebrauchen können!
Bei dir stimmt in Zeile 37 bzw eig. 38 der selektor $("day") nicht .. will das element mit dem tag-namen 'day' auswählen.. müsste $(this) sein denke ich
function addEntrySuccess(transaction, data) {
var dayOfCalendar = $(".daily-view").map(function () {
return $(this).text();//this of map() or of each()?
});
var monthOfCalendar = $(".calendar--month-year").text().split(" ")[0];
var yearOfCalendar = $(".calendar--month-year").text().split(" ")[1];
console.log(dayOfCalendar, monthOfCalendar, yearOfCalendar, "correct??");
$(data).each(function () {
for (var row_key = 0; row_key < data.rows.length; row_key++) {
//needs the row_key of the for-loop
var dayDB = data.rows.item(row_key).dateday;
var monthDB = data.rows.item(row_key).datemonth;
var yearDB = data.rows.item(row_key).dateyear;
for (var day_key = 0; day_key < 31; day_key++) {
console.log (
dayDB + " == " + dayOfCalendar[day_key] + " && " +
monthAsText(monthDB - 1) + " == " + monthOfCalendar +
" && " + yearDB + " == " + yearOfCalendar
);
if (
dayDB == dayOfCalendar[day_key] &&
monthAsText(monthDB - 1) == monthOfCalendar &&
yearDB == yearOfCalendar
) {
console.log(dayOfCalendar[day_key]);
$(this).append("<div class='circle'></div>");
}
}
}
});
}
;(function(){//prevent global var month (this runs one time in own namespace on scriptload)
var month = new Array(
"Januar",
"Februar",
"März",
"April",
"Mai",
"Juni",
"Juli",
"August",
"September",
"Oktober",
"November",
"Dezember"
);
function monthAsText(number) {
return month[number];
}
}()
Alles anzeigen