מדיה ויקי:Hebcalendar.js
הערה: לאחר הפרסום, ייתכן שיהיה צורך לנקות את זיכרון המטמון (cache) של הדפדפן כדי להבחין בשינויים.
- פיירפוקס / ספארי: להחזיק את המקש Shift בעת לחיצה על טעינה מחדש (Reload) או ללחוץ על צירוף המקשים Ctrl-F5 או Ctrl-R (במחשב מק: ⌘-R).
- גוגל כרום: ללחוץ על צירוף המקשים Ctrl-Shift-R (במחשב מק: ⌘-Shift-R).
- אינטרנט אקספלורר / אדג': להחזיק את המקש Ctrl בעת לחיצה על רענן (Refresh) או ללחוץ על צירוף המקשים Ctrl-F5.
- אופרה: ללחוץ על Ctrl-F5.
/*** Hebrew Calendar Options *****
* Shows three radio buttons for the Hebrew calendar options.
* Writen by [[User:Yonidebest]]
*
*/
function hebrewCalendarInit() {
var hebrewOptions = document.getElementById('HebrewOptions');
if (!hebrewOptions) return;
hebrewOptions.innerHTML = "";
var elForm = document.createElement("FORM");
elForm.style.display = "inline";
try { // IE
var elInput1 = document.createElement('<INPUT name="hebrewOptionsRadio">');
} catch(e) { // other browsers
var elInput1 = document.createElement('INPUT');
elInput1.name = "hebrewOptionsRadio";
}
elInput1.type = "radio";
elInput1.value = "0";
elInput1.onclick = function(){ hebrewCalendar(this.value);return true; }
elForm.appendChild(elInput1);
elForm.appendChild(document.createTextNode("כולם "));
try { // IE
var elInput2 = document.createElement('<INPUT name="hebrewOptionsRadio">');
} catch(e) { // other browsers
var elInput2 = document.createElement('INPUT');
elInput2.name = "hebrewOptionsRadio";
}
elInput2.type = "radio";
elInput2.value = "1";
elInput2.defaultChecked = true;
elInput2.onclick = function(){ hebrewCalendar(this.value);return true; }
elForm.appendChild(elInput2);
elForm.appendChild(document.createTextNode("עיקריים "));
try { // IE
var elInput3 = document.createElement('<INPUT name="hebrewOptionsRadio">');
} catch(e) { // other browsers
var elInput3 = document.createElement('INPUT');
elInput3.name = "hebrewOptionsRadio";
}
elInput3.type = "radio";
elInput3.value = "2";
elInput3.onclick = function(){ hebrewCalendar(this.value);return true; }
elForm.appendChild(elInput3);
elForm.appendChild(document.createTextNode("ללא"));
hebrewOptions.appendChild(elForm);
hebrewOptions.style.display = "inline";
hebrewCalendar("1");
}
function hebrewCalendar(index) {
var spans = document.getElementsByTagName("SPAN");
for (var i = 0; i < spans.length; i++) {
switch (index) {
case "0": // כולם
if (spans[i].id == "MainHoliday" || spans[i].id == "NonMainHoliday")
toggleHoliday(spans[i], false);
break;
case "1": // עיקריים
if (spans[i].id == "MainHoliday")
toggleHoliday(spans[i], false);
if (spans[i].id == "NonMainHoliday")
toggleHoliday(spans[i], true);
break;
case "2": // ללא
if (spans[i].id == "MainHoliday" || spans[i].id == "NonMainHoliday")
toggleHoliday(spans[i], true);
break;
}
}
}
// where action is true: remove color;
function toggleHoliday(span, action) {
var aHoliday = span.parentNode;
var supHoliday = aHoliday.parentNode;
var tdHoliday = supHoliday.parentNode;
if (tdHoliday.tagName != "TD") tdHoliday = tdHoliday.parentNode;
if (action) { // then remove
span.removeAttribute("style");
if (tdHoliday.id)
tdHoliday.removeAttribute("bgColor");
else {
tdHoliday.id = tdHoliday.bgColor;
tdHoliday.removeAttribute("bgColor");
}
} else {
span.style.cursor = "help";
span.style.borderBottom = "2px solid red";
if (tdHoliday.id)
tdHoliday.bgColor = tdHoliday.id;
}
}
$(hebrewCalendarInit);