Hebamme4u`s Fruchtbarkeitskalender- Unregelmäßige Zyklen & Kinderwunsch
Der Fruchtbarkeitskalender von Hebamme4u ist bei Kinderwunsch besonders für unregelmäßige Zyklen geeignet. Das Programm berechnet einen Mittelwert Ihrer fruchtbaren Tage. Unverzichtbar also besonders bei kaum zu ermittelnden Eisprüngen. Und so funktioniert er:
- Geben Sie bitte Ihre letzte Periode ein.
- ihren kürzesten und längsten Zyklus muss es das Programm ebenfalls wissen.
- Klicken Sie auf berechnen" und schon haben Sie ein Ergebnis.
Den Eisprung zu errechnen ist trotz Zyklusstörungen kinderleicht
var win= null; function NewWindow(mypage,myname,w,h,scroll){ var winl = (screen.width-w)/2; var wint = (screen.height-h)/2; var settings =\'height=\'+h+\',\'; settings +=\'width=\'+w+\',\'; settings +=\'top=\'+wint+\',\'; settings +=\'left=\'+winl+\',\'; settings +=\'scrollbars=\'+scroll+\',\'; settings +=\'resizable=yes\'; win=window.open(mypage,myname,settings); if(parseInt(navigator.appVersion) >= 4){win.window.focus();} } function richtigesdatum(dateStr) { var datePat = /^(\d{1,2})(\/|.)(\d{1,2})\2(\d{4})$/; // requires 4 digit year var matchArray = dateStr.match(datePat); // is the format ok? if (matchArray == null) { alert(unescape("Datumseingabe ist ung%FCltig%21")) return false; } month = matchArray[3]; // parse date into variables day = matchArray[1]; year = matchArray[4]; if (month < 1 || month > 12) { // check month range alert("Monat muss zwischen 1 und 12 liegen!"); return false; } if (day < 1 || day > 31) { alert("Tag muss zwischen 1 and 31 liegen!"); return false; } if ((month==4 || month==6 || month==9 || month==11) && day==31) { alert("Der Monat "+month+" hat keine 31 Tage!") return false; } if (month == 2) { // check for february 29th var isleap = (year % 4 == 0 && (year % 100 != 0 || year % 400 == 0)); if (day>29 || (day==29 && !isleap)) { alert("Der Februar im Jahr " + year + " hat keine " + day + " Tage!"); return false; } } return true; } function datumanzeige(dateObj) { month = dateObj.getMonth()+1; month = (month < 10) ? "0" + month : month; day = dateObj.getDate(); day = (day < 10) ? "0" + day : day; year = dateObj.getYear(); if (year < 2000) year += 1900; return (day + "." + month + "." + year); } function fruchtbarkeitberechnen(pregform) { periodeDate = new Date(); // creates new date objects ovulationTime = new Date(); erstertag = new Date(); letztertag = new Date() today = new Date(); kurz = 0, lang = 0; // sets variables to invalid state ==> 0 if (richtigesdatum(pregform.periodeDate.value)) { // Validates menstual date periodeinput = new Date(pregform.periodeDate.value); periodeDate.setTime(periodeinput.getTime()) } else return false; // otherwise exits kurz = (pregform.kurz.value == "" ? 28 : pregform.kurz.value); // defaults to 28 // validates kurz range, from 22 to 45 if (pregform.kurz.value != "" && (pregform.kurz.value < 22 || pregform.kurz.value > 45)) { alert("Ihre Zyklusdauer ist entweder zu kurz oder zu lang \n" + "um die Termine richtig zu berechnen! Die Berechnung \n" + "wird dennoch mit Ihren Daten erfolgen. "); } lang = (pregform.lang.value == "" ? 28 : pregform.lang.value); // defaults to 28 // validates lang range, from 22 to 45 if (pregform.lang.value != "" && (pregform.lang.value < 22 || pregform.lang.value > 45)) { alert("Ihre Zyklusdauer ist entweder zu kurz oder zu lang \n" + "um die Termine richtig zu berechnen! Die Berechnung \n" + "wird dennoch mit Ihren Daten erfolgen. "); } // sets ovulation date to periode date + kurz days - lang days // the \'*86400000\' is necessary because date objects track time // in milliseconds; 86400000 milliseconds equals one day var periodeTime = (month + "/" + day + "/" + year) ovulationTime.setTime((Date.parse(periodeTime)) + (14*86400000)); pregform.eisprung.value = datumanzeige(ovulationTime); // erster fruchtbarer Tag= Beginn der Periode + (kŸrzester Zyklus -18) Tage erstertag.setTime((Date.parse(periodeTime)) + ((kurz-18)*86400000)); pregform.erstertag.value = datumanzeige(erstertag); // erster fruchtbarer Tag= Beginn der Periode + (kŸrzester Zyklus -18) Tage letztertag.setTime((Date.parse(periodeTime)) + ((lang-11)*86400000)); pregform.letztertag.value = datumanzeige(letztertag); return false; // form should never submit, returns false }
Mit diesem Kalender können Sie Ihre fruchtbaren Tage berechnen:
|